shell 脚本参数

  • 汇总

    # 说明 备注
    $# 脚本的参数个数
    $0 执行的脚本文件
    $1...n 具体的参数,$1 代表第一个参数
    $$ 执行脚本的进程ID
    $? 脚本执行状态 0表示没有错误,其他任何值表明有错误
    $* 引用所有的参数
    $@ 引用所有的参数
  • $* 与 $@ 区别

    • 只有在双引号中体现出来。假设在脚本运行时传递三个参数 p1, p2, p3,则 "$* " 等价于 "p1 p2 p3"(传递了一个参数),而 "$@" 等价于 "p1" "p2" "p3"(传递了三个参数
  • 示例

    echo '-- $# 参数个数 \t\t'  $#
    echo '-- $0 执行脚本名 \t'  $0
    echo '-- $1 脚本第一个参数 \t'  $1
    echo '-- $$ 脚本进程ID \t' $$
    echo '-- $? 脚本执行状态(0表示没有错误,其他任何值表明有错误) \t' $?
    echo '-- $* 参数引用\t\t'  $*
    echo '-- $@ 参数引用\t\t'  $@
    
    echo '-- "$* 单字符显示所有传递参数参数: for i in "$*"; do echo $i done"'
    
    for i in "$*"; do
    	echo '\t' $i
    done
    
    echo '-- "$@ 参数以数组形式存在:for i in "$@"; do echo $i done"'
    
    for i in "$@"; do
    	echo '\t' $i
    done
    

    image

posted @   cc-31415926  阅读(84)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Blazor Hybrid适配到HarmonyOS系统
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· 解决跨域问题的这6种方案,真香!
· 一套基于 Material Design 规范实现的 Blazor 和 Razor 通用组件库
· 分享4款.NET开源、免费、实用的商城系统
点击右上角即可分享
微信分享提示