这些是brew命令的摘录.
BREW_FILE_DIRECTORY=$(chdir "${0%/*}" && pwd -P)
export HOMEBREW_BREW_FILE="$BREW_FILE_DIRECTORY/${0##*/}"
Run Code Online (Sandbox Code Playgroud)
做什么${0%/*}
和${0##*/}
在外壳是什么意思?
这是获取文件名的不同部分的示例
bash-3.2$ pathandfile=/tmp/ff.txt
bash-3.2$ filename=$(basename $pathandfile)
bash-3.2$ echo $filename
ff.txt
bash-3.2$ echo ${filename##*.}
txt
bash-3.2$ echo ${filename%.*}
ff
Run Code Online (Sandbox Code Playgroud)
我想知道##和%在模式中意味着什么.patten匹配如何工作?
感谢致敬!