linux基础操作:主要介绍了读取变量的值和位置参数的应用方法
1.读取变量里面的值:
纯返回值方法:例子1:echo $ABC表示输出变量ABC里面的值,输出结果:1例子2:echo "abc=$ABC"表示输出ABC变量里的值,输出结果:abc=1命令结果返回值方法:例子1:A=`ls -la`表示将ls -la命令执行结果赋值给A变量,使用echo $A 取值时是取的ls -la执行后的结果。例子2:A=$(ls -la )表示将ls -la命令执行结果赋值给A变量,使用echo $A 取值时是取的ls -la执行后的结果。
2.位置参数[类似其他语言中的取占位符的值]
特别说明:$0代表执行命令主体本身,&1~$9表示设置的参数位,${10}表示设置参数位是第10位[参数超过10位以后应使用此方法],$*表示除命令本身外其他参数会被视为一个整体,$#表示用户输入的个数不包括命令本身。$@表示所有参数不包括命令本身。例子1:echo "$0 $1 $2"表示使用echo输出命令本身和第1和第2个参数的值,通常写在运行脚本时加参数需要接收用户输入时使用。例子2:echo "$0 ${10}"表示使用echo输出命令本身和第10个参数的值。例子3:echo "$@"表示使用echo输出所有已使用的参数值。例子4:echo "$#"表示查询用户输入的参数个数。完整的脚本列子:sh myshell.sh 1 2 3 4 5 6 7 8 9 10 11 #!/bin/hash #myshell脚本源码 echo "标准参数位例子:$0 $1 $2" echo "超过10个参数位例子:$0 ${10}" echo "用户输入的参数:$*" echo "用户输入的所有参数:$@" echo "用户输入的所有参数个数:$#" 返回结果: 标准参数位例子:myshell.sh 1 2 超过10个参数位例子:myshell.sh 10 用户输入的参数:1 2 3 4 5 6 7 8 9 10 11 用户输入的所有参数:1 2 3 4 5 6 7 8 9 10 11 用户输入的所有参数个数:11
3.系统预定义变量
例子1:echo $$ 表示输出当前进程PID号例子2:echo $! 表示后台运行的最后一个进程PID号例子3:echo $? 表示最后一条执行的命令状态,0表示成功,非0表示执行不成功。完整脚本例子:./myshell.sh #后台执行脚本:./shellhello.sh & #!/bin/bash #预定义变量例子: echo "输出当前进程PID号:$$" echo "输出最后一个后台运行的进程PID号:$!" echo "返回命令执行状态(0成功,非0失败):$?" 返回结果: 输出当前进程PID号:2718 输出最后一个后台运行的进程PID号:2719 返回命令执行状态(0成功,非0失败):0