$について?

889 ワード

$?最後に実行したコマンドの終了コードを示します
 
テスト例1
root@bosh:~# cat aexit 2root@bosh:~# sh aroot@bosh:~# echo $?2root@bosh:~# cat a | grep exitexit 2root@bosh:~# echo $?0root@bosh:~# cat a | grep helloroot@bosh:~# echo $?1root@bosh:~#
 
テスト例2[root@updb-new1 ~]# mysql -uroot -e "show databases"+--------------------+| Database           |+--------------------+| information_schema || mysql              || test               |+--------------------+[root@updb-new1 ~]# echo $?0[root@updb-new1 ~]# mysql -uroot -e "show databases"|grep test2[root@updb-new1 ~]# echo $?1[root@updb-new1 ~]#
 
説明:1、終了値は0で、実行に成功したか、一致するレコードがあることを示します.2、逆に、実行に成功していないか、一致するレコードが存在しない.
 
シーンの一般的な使用
実際にスクリプトを作成する場合は、次のif文で前のコマンドが成功したかどうかを判断できます.
if [ $? -ne 0 ]
then
echo '      or          '
fi