web-dev-qa-db-ja.com

Unix-あるディレクトリの内容を別のディレクトリにコピーする

Folder1/
    -fileA.txt
    -fileB.txt
    -fileC.txt

> mkdir Folder2/

> [copy command]

そして今、Folder2/は次のようになります。

Folder2/
    -fileA.txt
    -fileB.txt
    -fileC.txt   

これを実現する方法は? cp -r Folder1/ Folder2/を試しましたが、結果は次のとおりです。

Folder2/
    Folder1/
        -fileA.txt
        -fileB.txt
        -fileC.txt

これは近いですが、私が望んでいたものとはまったく異なります。

ありがとう!

80
JDS

これを試して:

cp Folder1/* Folder2/
113
Geoff

*ワイルドカードを使用すると、非常に簡単です。

cp -r Folder1/* Folder2/

しかし、あなたの例によると、再帰は必要ないので、以下で十分です:

cp Folder1/* Folder2/

編集:

または、mkdir Folder2の部分をスキップして、単に実行します:

cp -r Folder1 Folder2
41
Koen.

正確なコピー、権限、所有権、およびすべてを作成するには、「-a」と「cp」を使用します。 「-r」はファイルの内容をコピーしますが、必ずしも他のものを同じに保つわけではありません。

cp -av Source/* Dest /

(Dest /が最初に存在することを確認してください)

一方から他方へ繰り返し更新したい場合、またはすべてのドットファイルもコピーしたい場合は、rsyncが非常に役立ちます。

rsync -av --delete Source/Dest /

これは、コピー中に中止した場合に再起動できるという点でも「回復可能」です。 「-v」が好きなのは、何が起こっているかを見ることができるが、省略できるからです。

22
Brian White