私はUNIXで新しいですし、以下のことを行う必要があるとの動的なファイル名を置き換える: 私は名前を持つ10件のファイルがあります。UNIXは、動的な文字列
t1_20160322_load_8977854_49843489_1.xml
t1_20160322_load_8977855_47536364_1.xml
t1_20160322_load_8977856_93435735_1.xml
t1_20160322_load_8977857_78637575_1.xml
t1_20160322_load_8977858_97437542_1.xml
....
を、私は次の内容の一つのファイル(loadnumber.txt)を受け:
8977854;EUROLOADSAMPLE;c
8977855;ASIENLOADSAMPLE;i
8977856;AFRICANLOADSAMPLE;s
8977857;USALOADSAMPLE;l
8977858;CANADALOADSAMPLE;o
私は、ファイルt1_20160322_load_8977854_49843489_1.xmlが
に変更する必要があります例えば、テキストファイルからの値で番号を交換する必要があります210とファイルt1_20160322_load_8977854_49843489_1.xmlがt1_ASIENLOADSAMPLE_i.xml
に変更する必要がありますが、私はUnixのコマンドーの書き方をグーグルしてみましたが、私は基本的な知識が不足していますだと思うので、私は以下のことを書いた:
for f in $(t1*xml);do;for x in $(cat contracts_generator.txt);do;g=$(echo $x | cut -d\; -f1); n=$(echo $x | cut -d\; -f2); m=$(echo $x | cut -d\; -f3);mv $f t1_$n.xml;done;done
これはもちろん動作しませんでした。あなたは私がコードを書くべき方法を理解するのを助けてくれますか?
ご回答いただきありがとうございます。