Filenames

從路徑字元串中提取文件名

  • July 11, 2019

我有一個這樣的字元串

/path/to/some/file.txt

我只想提取文件名,不帶副檔名:

file

問題是這個路徑是隨機選擇的,我不能把它硬編碼成一個變數作為路徑,它必須是字元串。我不希望文件名包含任何非字母數字字元。最簡單的方法是什麼?

答案:使用基本名稱https://stackoverflow.com/a/10124347/879882

在此處查看有關堆棧溢出的答案

basename /path/to/some/file.txt 

將只返回文件名。更多內容可以閱讀man basename

如果您希望只有文件名而沒有後綴,您可以完成 anbasename -s .txt /path/to/some/file.txt並且它也會刪除後綴。

另一種選擇:

您可以使用awk 'BEGIN{FS="/"} {print $NF} and 來刪除後綴,只需| awk 'BEGIN{FS="."} {print $1}'

引用自:https://unix.stackexchange.com/questions/529633