1.使用basename dirname
1)basename返回路徑中的文件名部分
用法:
basename(path,suffix)
path 必須,輸入路徑
suffix 可選,文件擴展名。如果文件名有文件擴展名,將不會顯示這個擴展名。
舉栗:
basename /home/Project/Myjob/hello.txt #輸出hello.txt
basename /home/Project/Myjob/hello.txt .txt #輸出hello
basename /home/Project/Myjob/ #輸出Myjob
2)從路徑中獲取目錄名
用法:
dirname path
path 必須,輸入路徑
舉栗:
dirname /home/Project/Myjob/hello.txt #輸出/home/Project/Myjob
dirname /home/Project/Myjob #輸出/home/Project
dirname /home/Project/Myjob /home/Project #輸出home/Project /home
dirname后的路徑可以有多個
3)舉栗:
var=/home/Project/Myjob/hello.txt
echo $(basename $var) 結果:hello.txt
echo $(basename $var .txt) 結果:hello
echo $(dirname $var) 結果:/home/Project/Myjob
2.使用字符串截取的方式
路徑:var=/home/Project/Myjob/hello.txt
${var##*/} 獲取文件名 hello.txt
${var##*.} 獲取文件后綴txt,若后綴為file.tar.gz則可用${var#*.}
${var%/*} 獲取文件所在目錄結構 即/home/Project/Myjob