A maneira mais simples é armazenar a resposta e compará-la:
$ response=$(curl -X POST [email protected] server-URL);
$ if [ "Upload successful" == "${response}" ]; then … fi;
Eu não testei isso. A sintaxe pode estar desativada, mas essa é a ideia. Tenho certeza de que existem maneiras mais sofisticadas de fazer isso, como verificar o código de saída do curl ou algo assim.
atualizar
curl
retorna alguns códigos de saída. Eu estou supondo que uma postagem com falha pode resultar em 55 Failed sending network data.
Então, você provavelmente poderia apenas certificar-se de que o código de saída era zero, comparando com $?
( Expands to the exit status of the most recently executed foreground pipeline.
):
$ curl -X POST [email protected] server-URL;
$ if [ 0 -eq $? ]; then … fi;
Ou se o seu comando for relativamente curto e você quiser fazer algo quando ele falhar, você pode confiar no código de saída como a condição em uma instrução condicional:
$ if curl --fail -X POST [email protected] server-URL; then
# …(success)
else
# …(failure)
fi;
Eu acho que esse formato é geralmente preferido , mas pessoalmente acho menos legível.