Chcę wysłać dane wyjściowe uptime
i df
polecenia do aplikacji internetowej za pomocą cURL. Próbowałem:
uptime | curl http://someurl.com -T -
Ale to nie wydawało się przesyłać danych.
Jaki jest właściwy sposób wysłania wyniku polecenia do cURL jako parametru POST? (lub wget jeśli to o wiele łatwiejsze)
>
a nie potoku|
? Zobacz takżexargs
.--post-data=string
): gnu.org/software/wget/manual/wget.html#HTTP- Opcje-T
zhttp[s]://
zastosowaniem PUT, a nie POST.Odpowiedzi:
Możesz użyć opcji -d w curl z argumentem @ -, aby zaakceptować dane wejściowe z potoku. Musisz sam zbudować pary klucz-wartość. Spróbuj tego:
Znaki wsteczne (`) oznaczają, że załączone polecenie (w tym przypadku czas działania) powinno zostać wykonane, a cytowany tekst zwrotny zastąpiony danymi wyjściowymi wykonanego polecenia.
źródło
df
curl --data-binary @- URL
uptime | curl --data-urlencode time@- URL