ファイルを別のディスクにコピーし、完了したら削除してから、元の場所にあるファイルへのシンボリックリンクを再作成したいと思います。
例: copyandlink.sh somefile.iso
#!/bin/bash
set -e
cp $1 /media/storage/linked/ &&
rm $1 &&
ln -s /media/storage/linked/$1 ./
またはそのようなもの。
答え1
スクリプトが好きなように正しく動作するので、正しい方向に行っているのです。
次のように単純化して改善できます。
#!/bin/bash
mv $1 /media/storage/linked/ &&
ln -s /media/storage/linked/$1 .
set -e
コマンドがすでに終了しているため、何の効果もありません&&
。
私はまた交換し、cp
同じパーティションにあるかどうかにかかわらず、2つを自動的に処理しますrm
。mv