引數擴充套件和檔名

你可以使用 Bash 引數擴充套件來模擬常見的檔名處理操作,如 basenamedirname

我們將使用它作為示例路徑:

FILENAME="/tmp/example/myfile.txt"

要模擬 dirname 並返回檔案路徑的目錄名:

echo "${FILENAME%/*}"
#Out: /tmp/example

要模擬 basename $FILENAME 並返回檔案路徑的檔名:

echo "${FILENAME##*/}"
#Out: myfile.txt

要模擬 basename $FILENAME .txt 並返回沒有 .txt. 副檔名的檔名:

BASENAME="${FILENAME##*/}"
echo "${BASENAME%%.txt}"
#Out: myfile