次のフォルダ構造があるとしましょう。
/parentFolder/
folder1/
folder1.1/
file1
folder2/
file2
file2も含めるようにフォルダ2をフォルダ1.1にコピーする方法
/parentFolder/folder1/folder1.1/folder2/file2
つまり、フォルダ構造は次のようになります。
/parentFolder/
folder1/
folder1.1/
folder2/
file2
file1
folder2/
file2
?
ただ行くとcp -R /parentFolder/folder2 /parentFolder/folder1/folder1.1
コピーされます。コンテンツフォルダ2にもコピーしたいのですが、フォルダ2もコピーしたいです。
関連質問:mv
答えも適用されますか?
答え1
cp -R parentFolder/folder2 parentFolder/folder1/folder1.1/folder2
答え2
rsync
私はこのようなアクションを好みます。ファイルのコピーに加えて、権限をコピーし、既存の転送と比較して転送速度を向上させることもできますcp
。
目的地まで追跡することは/
要件にとって非常に重要です。
次のようにしてみてください。
rsync -aHSv /parentFolder/folder2 /parentFolder/folder1/
答え3
cp
どちらを使用していますか?他のシステムのUNIXツールは多少似ていますが、特定の状況では異なる動作をする可能性があります。
GNUにはcp
望ましい動作があります。 BSDにはcp
説明する動作があります。最初のパラメータからスラッシュを削除し、次のように書きます。
cp -R /parentFolder/folder2 /parentFolder/folder1/folder1.1
代わりに:
cp -R /parentFolder/folder2/ /parentFolder/folder1/folder1.1
ウィキペディアによると(1)、これはcp
BSDが望むことをする方法です。