Filenames
從路徑字元串中提取文件名
我有一個這樣的字元串
/path/to/some/file.txt
我只想提取文件名,不帶副檔名:
file
問題是這個路徑是隨機選擇的,我不能把它硬編碼成一個變數作為路徑,它必須是字元串。我不希望文件名包含任何非字母數字字元。最簡單的方法是什麼?
答案:使用基本名稱https://stackoverflow.com/a/10124347/879882
在此處查看有關堆棧溢出的答案
basename /path/to/some/file.txt
將只返回文件名。更多內容可以閱讀
man basename
如果您希望只有文件名而沒有後綴,您可以完成 an
basename -s .txt /path/to/some/file.txt
並且它也會刪除後綴。另一種選擇:
您可以使用
awk 'BEGIN{FS="/"} {print $NF}
and 來刪除後綴,只需| awk 'BEGIN{FS="."} {print $1}'