3

次のようなファイル名を含むファイルがあります。

my_cool_file.xxx
my_cool_file2.xxx
my_cool_file3.xxx

次のフォルダがあります:

some_file.xxx
some_file2.xxx
some_file3.xxx

ファイル名ファイルから1行を取得し、フォルダー内の1つのファイルの名前を変更するbashスクリプトが必要です。

これを行う方法はありますか?

4

1 に答える 1

2

注:この回答は一般的にはあまり良くありませんが、OPの問題は解決しました。

すべてのファイルは_file.xxxまたは_fileN.xxxで終わりますか?

基本的に、ファイル名のプレフィックスだけを変更したいですか?

私があなたの問題を正しく理解していて、番号のないファイルがfile_list.txtの最後にあると仮定すると、次のようにトリックを実行する必要があります


COUNTER=0
for FILE in `ls *.xxx | sort`; do
    COUNTER=$(($COUNTER+1))
    echo Moving $FILE to `sed -n ${COUNTER}p file_list.txt`
    #mv "${FILE}" `sed -n ${COUNTER}p file_list.txt`
done

mv実際の移動を実行したい場合は、の行にコメントしてください。

于 2010-05-23T23:32:05.957 に答える