We can tell it was the rmdir command in the previous section that failed, because rmdir is the first word of the error message output. We can test the command in isolation, and look at the value of the special $? parameter with echo, to see its exit status:
$ rmdir ~/nonexistent rmdir: failed to remove '/home/bashuser/nonexistent': No such file or directory $ echo $? 1
The rmdir program returned an exit value of 1, because it could not delete a directory that didn't exist. If we create a directory first, and then remove it, both commands succeed, and the value of $? for both steps is 0:
$ mkdir ~/existent $ echo $? 0 $ rmdir ~/existent $ echo $? 0
Examining the exit values for the true and false built-in Bash commands is instructive; true always succeeds, and false always fails:
$ true ; echo $? 0 $ false ; echo $? 1
Bash will also raise an exit status...