Ich versuche, durch die Ergebnisse meiner curl Aussage zu durchqueren und dann jede URL löschen, der zurückgegeben wird.Verfahrgeschwindigkeit durch Bash Locken Suchergebnisse
#!/bin/bash
declare -i Current_Date
declare -i Three_Months_Ago
Current_Date=($(date +%s%N)/1000000)
Three_Months_Ago=(${Current_Date}-7889238000)
curl -Username:Password "URL/api/search/dates?dateFields=created&from=${Three_Months_Ago}&today&repos=generic-sgca"
Welche der folgenden zurück:
{
"results" : [ {
"uri" : "URL/api/storage/generic-sgca/Lastest_Deploy.tar",
"created" : "2017-09-14T11:59:14.483-06:00"
}]
Es gibt mehr als 50 Zeilen wie diese. Jetzt möchte ich einen anderen "-X DELETE" curl-Befehl ausführen können, der jede zurückgegebene URL löscht. Wie zum Beispiel:
URL=curl -Username:Password "URL/api/search/dates?dateFields=created&from=${Three_Months_Ago}&today&repos=generic-sgca"
curl -Username:Password -X DELETE ${URL}
Oder so etwas. Wie kann ich das erreichen?
EDIT:
Ich habe das versucht, und es scheint nicht zu funktionieren:
#!/bin/bash
declare -i Current_Date
declare -i Three_Months_Ago
Current_Date=($(date +%s%N)/1000000)
Three_Months_Ago=(${Current_Date}-7889238000)
while read -r uri; do
curl -Username:Password -X DELETE "$uri"
done < <(
curl -Username:Password "URL/api/search/dates?dateFields=created&from=${Three_Months_Ago}&today&repos=generic-sgca" | # get the list of uris
grep -o "uri" | # filter out everything else
tr -d ',' | # remove commas
awk '{print $3}' # print just the uri
)
ich diese erhalte im Gegenzug:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 3225 0 3225 0 0 3225 0 --:--:-- --:--:-- --:--:-- 15140
curl: (3) <url> malformed
curl: (3) <url> malformed
curl: (3) <url> malformed
curl: (3) <url> malformed
curl: (3) <url> malformed
curl: (3) <url> malformed
curl: (3) <url> malformed
curl: (3) <url> malformed
curl: (3) <url> malformed
curl: (3) <url> malformed
curl: (3) <url> malformed
curl: (3) <url> malformed
curl: (3) <url> malformed
curl: (3) <url> malformed
curl: (3) <url> malformed
Sehen Sie, wie Ihre URIs aussehen, indem Sie zu 'echo curl -Username: Password -X LÖSCHEN" $ uri "' Viel Glück. – shellter