ファイル名の先頭から数字を削除

ファイル名の先頭から数字を削除

次の形式の巨大なファイル名のリストがあります。

807630007_ sample Authorization (03).pdf
00456007_9760sample Authorization (06).pdf
00259007_9560Customerchoice Authorization (08).pdf

以下のようにファイル名を抽出する必要があります。

sample Authorization (03).pdf
sample Authorization (06).pdf
Customerchoice Authorization (08).pdf
$ echo "00259007_9560Customerchoice Authorization (08).pdf"|sed 's/^1234567890_//'
00259007_9560Customerchoice Authorization (08).pdf

ファイルの先頭から数字と下線を削除してみてください。動作しません。

答え1

数字、アンダースコア、スペース文字を含むプレフィックスを削除するには、次のようにします。

sed 's/^[0-9_ ]*//'

例えば

for i in *.pdf; do
  echo "$i" | sed 's/^[0-9_ ]*//'
done

関連情報