次を含む rename_everything.sh スクリプトがある場合
mv 2022-05-03.txt hike_valley.txt
mv 2022-05-20.txt not_overcooked.txt
mv 2022-05-22.txt return_trip.txt
しかし、フォルダに入れて実行するのは不安です。
bash rename_everything.sh
これを行うことにした後、それが悪い考えであると判断し、後悔している場合は、今行ったのと正反対の方法で対応する.shファイルを呼び出すことは可能ですか?
答え1
通常、注文はキャンセルできませんmv 2022-05-03.txt hike_valley.txt
。
一見すると、mv hike_valley.txt 2022-05-03.txt
「元に戻す」コマンドのように見えます。しかし、通常のファイルがhike_valley.txt
すでに存在しているとしましょう。覆われた最初のコマンドを渡します。元のコンテンツは簡単に復元されません。確かに、いわゆる「元に戻す」コマンドは元の内容を復元しません。
別のケースは、hike_valley.txt
ディレクトリ(可能性があります)またはディレクトリへのシンボリックリンクの場合です。この場合、最初のコマンドはを生成または上書きしますhike_valley.txt/2022-05-03.txt
。ここで、「取り消し」とは、mv hike_valley.txt/2022-05-03.txt ./
上記の「取り消し」と既に異なる。上書きが発生しても、実際には元に戻されません。
同じ推論がmv
スクリプトのすべてのコマンドに適用されます。