txtファイルを使用してフォルダ名を変更する[閉じる]

txtファイルを使用してフォルダ名を変更する[閉じる]

端末でbashを使用してフォルダの名前を変更しようとしています。

1 2 3 4 5

a.txtファイルに基づいて名前を変更したいと思います。

a 2 
c 3 
d 5 
e 1 
b 4

.txt ファイルの順序は完全にランダムです。フォルダ名を次のように変更する方法を見つけたいです。

1 > e 
2 > a 
3 > c 
4 > b 
5 > d

これを行う方法はありますか?私はOSXを使用しています。

答え1

上記の単純なケースでは、各行にターゲットディレクトリと新しい名前という2つの「単語」があり、両方にスペースを含めることはできず、単に次のことができます。

while read -r from to; do mv "$from" "$to"; done < file 

fileこれは、最初の文字列が割り当てられた各行(最初のスペースまで)$fromと残りの行を読み取り、各行$tomv実行されます。

関連情報