shell 命令 - 命令行参数
命令行参数
在运行脚本时,有时需要输入参数,输入的参数称为命令行参数。命令行参数会按照参数输入的顺序将输入参数依次赋值给位置参数变量。
$0 是脚本的路径名,
$1 是第一个参数
$2 是第二个参数
…
$9 是第九个参数
${10} 是第十个参数
在脚本中就按照上述方式引用输入的参数变量
$# 该变量存储的是实际输入给脚本的参数的个数
$(basename $0) 可以获得脚本的名字,而不是路径名
${!#} 获取输入参数中最后一个参数的值
$* 将所有输入的参数当作一个整体
$@ 将所有输入的每一个参数当作一个单独的个体
$* 和 $@ 两者都可已获取到所有的输入参数
$$ 脚本运行的当前进程ID号
$? 显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误
shift 命令
shift :将所有输入的命令行参数向左移动一个位置
参数: a b c d e
移动前:$1->a, $2->b, $3->c, $4->d, $5->e
shift 移动后: $1->b, $2->c, $3->d, $4->e 参数a被移除掉了并且无法恢复
shift n:将所有输入的命令行参数向左移动n个位置
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南