Shell - $0、$1、$2、$?、$!、$$、$*、$#、$@的含义
$0、$1、$2 的含义?
在Shell中,$1代表传递给Shell脚本或函数的第一个命令行参数。这些参数也被称为位置参数。例如,如果你运行一个脚本并传递了两个参数,如
./script.sh filename1 dir1
那么$0将是脚本名称本身(在这个例子中是‘𝑠𝑐𝑟𝑖𝑝𝑡.𝑠ℎ‘),而$1将是第一个参数(filename1
),$2将是第二个参数(‘𝑑𝑖𝑟1‘)。
$1、$2等变量允许你在脚本内部访问传递给它的命令行参数,从而实现脚本功能的灵活性和可扩展性。
$?、$!、$$、$*、$#、$@的含义
$$ Shell本身的PID(ProcessID,即脚本运行的当前 进程ID号)
$! Shell最后运行的后台Process的PID(后台运行的最后一个进程的 进程ID号)
$? 最后运行的命令的结束代码(返回值),即执行上一个指令的返回值 (显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误)
$- 显示Shell使用的当前选项,与set命令功能相同
∗ 所 有 参 数 列 表 , 如 " * 所有参数列表,如"∗所有参数列表,如"*" 用["],括起来的情况,以"$1" “2 " . . . . " 2" ...."2"...."n” 的形式输出所有参数,
@ 所 有 参 数 列 表 。 如 " @ 所有参数列表。如"@所有参数列表。如"@“用「”」括起来的情况、以"$1" “2 " … " 2" … "2"…"n” 的形式输出所有参数。
@ 跟 @ 跟@跟*类似,但是可以当作数组用
$# 添加到Shell的参数个数
原文链接
https://blog.csdn.net/xu710263124/article/details/115740166
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?