在Bash 脚本中,使用if [[ $0 == ${BASH_SOURCE[0]} ]]; then的模式功能上与 Python 中的if __name__ == "__main__":语句相似。这个 Shell 脚本的构造在如下两种情境中判断当前脚本是被直接执行还是被 source: 脚本被直接执行(如./script.sh):此时$0与${BASH_SOURCE[0]}相同,都是脚本的名称,因此...
一、0 1 2 文件描述符 在shell 程式中,最常使用的 FD (file descriptor) 大概有三个, 分别是: 0 是一个文件描述符,表示标准输入(stdin) 1 是一个文件描述符,表示标准输出(stdout) 2 是一个文件描述符,表示标准错误(stderr) 在标准情况下, 这些FD分别跟如下设备关联: stdin(0): keyboard 键盘输入,并...
shell脚本中exit0和exit1的含义 exit 0:正常运行程序并退出程序; exit 1:非正常运行导致退出程序; exit 0 可以告知你的程序的使用者:你的程序是正常结束的。如果 exit 非 0 值,那么你的程序的使用者通常会认为 你的程序产生了一个错误。 在shell 中调用完你的程序之后,用 echo $? 命令就可以看到你的程序...
预定义变量使用“$”符号和另一个符号组合表示 $#:表示命令行中位置参数的个数 $*:表示所有位置参数的内容,这些内容做一个整体 $@:表示列出所有位置参数,但是是以单个的形式的列出 $?:表示前一条命令执行后的返回状态,返回值为0表示执行正确,返回任性非0值均表示执行出现异常。 $0:表示当前执行的脚本或程序的...
shell 中运行的每个命令都使用退出状态码(exit status)告诉 shell 它已经运行完毕。退出状态码是一个 0 ~ 255 的整数值,在命令结束运行时由命令传给 shell。可以捕获这个值并在脚本中使用。 查看退出状态码 Linux 提供了一个专门的变量$?来保存上个已执行命令的退出状态码。对于需要进行检查的命令,必须在其运行...
Shell脚本语言中将:输入、输出、错误分为了三种描述符(3种状态)->分别对应的值(0、1、2) 0 通常是标准输入(STDIN),1 是标准输出(STDOUT),2 是标准错误输出(STDERR) 将输出重定向到 file : command > file 将输入重定向到 file: command < file ...
0(脚本名称: 0) The 0variableholdsthenameofthescript,anditisusefulforgeneratingdiagnosticmessages.Forexample,sayyourscriptneedstoreportaninvalidargumentthatisstoredinthe BADPARM variable. You can print the diagnostic message with the following line so that the script name appears in the error message: ...
单独定义数组的元素: array_para[0]="w"; array_para[3]="s" (定义时下标不连续也可以) 赋值数组元素:array_name[0]="zhao"; 获取数组元素: array_name[0]="li" array_name[3]="zhang" echo ${array_name[0]} # 输出"li" echo ${array_name[1]} # 输出" " ...
0 (3)目录中的文件是否存在 #ls batch.sh helloworld.sh parameter.sh yifan #pwd /root #[ -e /root/test.sh ] #echo $? 1 #[ -e /root/helloworld.sh ] #echo $? 0 (4)多条件判断(&& 表示前一条命令执行成功时,才执行后一条命令,|| 表示上一条命令执行失败后,才执行下一条命令) ...
数组访问:通过下标的方式访问 ---${var[number]}。数组元素的下标由0开始,和C语言类似。下标可以是整数或算术表达式,其值应大于或等于0。 在数组中,${#array[*]}和${#array[@]}表示数组中元素的个数。 8.1 初始化方式 shell中使用括号来表示数组,元素之间则使用空格符号分隔。