Mat*_*ieu 181
dirname $file
Run Code Online (Sandbox Code Playgroud)
是你在找什么
mat*_*hew 43
dirname $file
Run Code Online (Sandbox Code Playgroud)
将输出
stuff/backup
Run Code Online (Sandbox Code Playgroud)
这是相反的basename:
basename $file
Run Code Online (Sandbox Code Playgroud)
会输出
file.zip
Run Code Online (Sandbox Code Playgroud)
小智 8
使用${file%/*}Urvin/LuFFy 建议的方式在技术上更好,因为您不会依赖外部命令。要以与您相同的方式获取基本名称,您可以这样做${file##*/}。除非需要,否则没有必要使用外部命令。
file="/stuff/backup/file.zip"
filename=${1##*/} # file.zip
directory=${1%/*} # /stuff/backup
Run Code Online (Sandbox Code Playgroud)
这样它也完全符合 POSIX 标准。希望能帮助到你!:-)