私はphotorecを使用してハードドライブからデータを回復し、現在ホームディレクトリから貴重なスペースを/home/ray/recup_dir.1
占める多くのディレクトリがあります。/home/ray/recup-dir.598
別のディレクトリにコピーしたい/media/ray/"Seagate Expansion Drive"/RecupsA
1つのコマンドを使用してこれをどのように実行できますか?
答え1
私の心に浮かんだ最初の解決策はrsyncでした。すべてを除外します。パターンに一致するディレクトリを含みます。 rsyncを使用して同じホストに情報をコピーするのは奇妙だと思います。通常、リモートコンピュータにコピーするために使用されます。しかし、localhostにコピーできない理由はありません。
rsync -ravz --include '/home/ray/recup_dir.*' --exclude '*' user@localhost
ravzの説明:
-r recursive copy
-v verbose
-a : archive mode. Preserves symbolic links, file permissions, user & group ownerships, timestamps
-z : compress file data
2番目のオプションはチートを書きますmc
。これが始まるでしょう。真夜中司令官を使用すると、複数のディレクトリを選択してコピーできます。
3番目のオプション:検索。
find /home/ray/recup_dir.\* -exec cp {} /media/ray/"Seagate Expansion Drive"/RecupsA \;
4番目のオプション:シェルを使用します。 /home/ray/に移動して
for a in recup* ; do cp -r $a /media/ray/"Seagate Expansion Drive"/RecupsA; done
答え2
再帰オプションcp
と一緒に標準を使用してください。r
cp -r /home/ray/recup_dir.{1..598} "/media/ray/Seagate Expansion Drive/RecupsA"
しかし、この場合は移動する方が良いと思います。
mv /home/ray/recup_dir.{1..598} "/media/ray/Seagate Expansion Drive/RecupsA"
これら2つのコマンドは、最後のパラメータのみを次のように処理します。目的地そして以前のすべて源泉(ファイルまたはディレクトリ)。