if [ $? -eq 0 ]的含义

if [ $? -eq 0 ]语句代表上一个命令执行后的退出状态

$0:   shell或shell脚本的名字
$*:   以一对双引号给出参数列表
$@:   将各个参数分别加双引号返回
$#:       参数的个数
$_:  代表上一个命令的最后一个参数
$$:  代表所在命令的PID
$!:   代表最后执行的后台命令的PID
$?:  代表上一个命令执行后的退出状态

#! /bin/bash
SOME_DIR='/root/cjj/'  

cd $SOME_DIR
if [ $? -eq 0 ]; then  # 检查cd命令是否成功,如果成功才执行rm命令
        rm -rf *txt
else 'Cannot change directory'  # 如果cd命令运行失败,则打印一个错误信息,并退出,返回状态码1
        exit 1
fi




原文地址:https://www.cnblogs.com/chuijingjing/p/11767421.html