• Linux Shell bash脚本中的 $! $$ $- $0 $1~$n ${n} $# $@ $* $?


    变量说明

    $! : Shell最后运行的后台的PID

    $$ : Shell本身的PID(ProcessID)

    $- : 使用Set命令设定的当前Shell的Flag

    $0 : Shell本身的文件名

    $1 : 第一个参数

    $n 或 ${n} : 第n个参数, n大于等于10时(两位数及以上时)用 ${n}

    $# : 执行脚本时, 传入参数的个数

    $@ : 执行脚本时, 传入的所有参数的数组集合

    $* : 执行脚本时, 传入的所有参数,以空格连接的字符串

    $? : 脚本执行完的返回值




    $!




    $$




    $-

    set 命令:可以用来定制shell环境
    $- 变量
    h:hashall,打开选项后,Shell 会将命令所在的路径hash下来,避免每次都要查询。通过set +h将h选
    项关闭
    i:interactive-comments,包含这个选项说明当前的 shell 是一个交互式的 shell。所谓的交互式shell,
    在脚本中,i选项是关闭的
    m:monitor,打开监控模式,就可以通过Job control来控制进程的停止、继续,后台或者前台执行等
    B:braceexpand,大括号扩展
    H:history,H选项打开,可以展开历史列表中的命令,可以通过!感叹号来完成,例如“!!”返回上最近的
    一个历史命令,“!n”返回第 n 个历史命令
    set 命令实现脚本安全
    -u 在扩展一个没有设置的变量时,显示错误信息, 等同set -o nounset
    -e 如果一个命令返回一个非0退出状态值(失败)就退出, 等同set -o errexit
    -o option 显示,打开或者关闭选项
    显示选项:set -o
    打开选项:set -o 选项
    关闭选项:set +o 选项
    -x 当执行命令时,打印命令及其参数,类似 bash -x




    $0




    $1 $n ${n}




    $#




    $@




    $*




    $?




  • 相关阅读:
    MySQL:快照读和当前读
    MySQL高可用架构学习
    PZ-3B-70E2A-10、PZ-6B-220E2A-20电控比例压力流量驱动泵放大器
    初识Java,探索神秘的它
    CSDN 创作规范
    Linux 远程联机服务(二)- Rsh服务器
    基于钉钉的宜搭创建付款流程
    VTK四面体文件格式
    使用 🧨 Diffusers 实现 ControlNet 高速推理
    torch.jit.trace与torch.jit.script的区别
  • 原文地址:https://blog.csdn.net/kfepiza/article/details/126277624