CentOS「linux」学习笔记21:shell编程读取变量内容与位置参数

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

未经允许不得转载:谢雨尘安 » CentOS「linux」学习笔记21:shell编程读取变量内容与位置参数

赞 (0) 打赏

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏