私はこのような文字列を持っています
/path/to/some/file.txt
拡張子なしでファイル名を抽出したいです。
file
問題は、パスがランダムに選択され、パスを変数にハードコードできないことです。パスは文字列でなければなりません。ファイル名に英数字以外の文字が含まれたくありません。最も簡単な方法は何ですか?
答え1
答え:
デフォルト名を使用したスタックオーバーフローに対する回答の表示
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}
して実装することで、サフィックスを削除できます。| awk 'BEGIN{FS="."} {print $1}'