1.判断一个命令的结果使用test,其返回0,或一个整数。返回0表示true,返回整数表示错误码
2.获取上一个命令的返回结果使用$?
3.例如
我的服务器上面存在/home/www这样一个文件夹,所以ls /home/www这个命令的返回结果为0;
即echo $?的返回值为0
我的服务器上面不存在/home/kkk这样一个文件夹,所以ls /home/kkk这个命令的返回结果为这个命令执行后的错误码;
即echo $?的返回结果为2。这个2表示文件或文件夹不存在。
4.常用的文件测试符
-e表示此文件名是否存在
-f表示此文件名是否是文件
-d表示此文件名是否是文件夹
-r表示此文件名是否可读
-w表示此文件是否可写
-x表示此文件是否可执行
-S表示此文件是否问socket
4.1在我的服务器上/home/www为一个文件夹
所以test -e /home/www的结果为0,即true,此文件名存在
所以test -f /home/www 的结果不为0,即false,此文件名不为文件
所以test -d /home/www的结果为0,即为true,此文件名为文件夹
4.2在我的服务器上/home/kkk这个文件名不存在
所以test -e /home/kkk的结果不为0,即false,此文件名不存在
所以test -d /home/kkk的结果不为0,即false,此文件名不问文件夹。