【问题标题】:In bash, what does dir=${0%/*} means? [duplicate]在 bash 中,dir=${0%/*} 是什么意思? [复制]
【发布时间】:2017-05-08 07:02:56
【问题描述】:

我在研究 bash 脚本时发现了这段代码:

dir=${0%/*}

我怀疑大括号内的代码是正则表达式,但我不明白它的含义。有什么想法吗?

【问题讨论】:

    标签: bash shell glob parameter-expansion


    【解决方案1】:

    它不是一个正则表达式,而是一个pattern 匹配。它将dir 设置为脚本的名称,即$0,但如果$0 中有斜线,则没有最后一个斜线和任何非斜线。如果$0 中没有斜线,则dir 将获得$0 的副本不变。请参阅 Bash Hackers Wiki 中的 "Parameter Expansion"

    【讨论】:

      猜你喜欢
      • 2012-04-19
      • 2021-02-11
      • 2015-05-07
      • 2019-12-08
      • 2018-09-25
      • 2013-08-08
      • 1970-01-01
      • 2011-05-14
      • 2023-03-12
      相关资源
      最近更新 更多