Check wget's return value Check wget's return value bash bash

Check wget's return value


Others have correctly posted that you can use $? to get the most recent exit code:

wget_output=$(wget -q "$URL")if [ $? -ne 0 ]; then    ...

This lets you capture both the stdout and the exit code. If you don't actually care what it prints, you can just test it directly:

if wget -q "$URL"; then    ...

And if you want to suppress the output:

if wget -q "$URL" > /dev/null; then    ...


$r is the text output of wget (which you've captured with backticks). To access the return code, use the $? variable.


$r is empty, and therefore your condition becomes if [ -ne 0 ] and it seems as if -ne is used as a unary operator. Try this instead:

wget -q www.someurl.comif [ $? -ne 0 ]  ...

EDIT As Andrew explained before me, backticks return standard output, while $? returns the exit code of the last operation.