ファイル名から部分文字列を削除する[閉じる]

ファイル名から部分文字列を削除する[閉じる]

私のファイル名のサフィックスは異なります.csv.new。茎を抜かなければなりません。はいfile1_test.csv.newfile1_test変数を作成するにはトランクを削除する必要がありますfile1_test.err

答え1

basenameお客様の要件を満たす軽量ツールです。

$ basename file1_test.csv.new .csv.new
file1_test

だから

var=$(basename file1_test.csv.new).err

必要な内容がvar含まれています。file1_test.err

答え2

これを実行してください。 bashにワイルドカードの一致を逆さにするようにします%

for F in *.csv.new; do
  touch ${F%.csv.new}.err
done

ファイルがあれば

file1_test.csv.new
file2_test.csv.new

あなたは得るでしょう

file1_test.err
file2_test.err

関連情報