パス文字列からファイル名を抽出する

パス文字列からファイル名を抽出する

指定されたパスからファイル名を抽出する必要があります/dev/user/test.csv。たとえば、別の変数に場所が必要で、/dev/user/他の変数にファイル名が必要です。誰でも解決策を提案できますか?test.csv

答え1

通常

basename "/dev/user/test.csv" # produce «test.csv»
dirname "/dev/user/test.csv"  # produce «/dev/user»

一部のシェル(例bash:)では、次のものを使用できます。変数拡張

var="/dev/user/test.csv"
echo ${var##*/}               # produce «test.csv»
echo ${var%/*}                # produce «/dev/user»

存在する場合は、/dev/user/test.csv簡単な方法で必要なものを分割できます。

find /dev/user/test.csv -printf '%h\t%f\n'

関連情報