rsync
ソースディレクトリ内の複数のファイルを、存在しないサブディレクトリが複数あるターゲットディレクトリにコピーできますか?それとも、install -D
存在しないディレクトリに複数のファイルを使用しますか?
私も見ましたが、cp --parents
ソースディレクトリの名前を使用しました。cp
存在しないターゲットディレクトリを選択し、ターゲットディレクトリが作成されたら、すべてのファイルをここにコピーできますか?
この問題があります。単一のコマンドで存在しないディレクトリにファイルをコピーする(Linux) マージ:ファイルのコピー中にターゲットディレクトリを作成する方法は?
しかし、私が見ているファイルコピーソリューションは次のとおりです。
cp /etc/*.conf ~/mytest/
そのうち、mytestは存在せず、/etc/*.conf
複数のファイルです。cp
1つのコマンドのみを使用することは可能で、より良いですか?
答え1
次のコマンドを試してくださいrsync
。
rsync -av /etc/*.conf ~/mytest
一般的に利用可能
rsync -av In/*conf Out/NewDir
以前の状況は次のようになりました。
In
├── d1.conf
├── d2.conf
├── d3.txt
├── Sub_In_1
└── Sub_In_2.conf
└── SubIn2.Files
Out
└── Out_OldFiles
コマンドは次のとおりです。
Out
├── NewDir
│ ├── d1.conf
│ ├── d2.conf
│ └── Sub_In_2.conf
│ └── SubIn2.Files
└── Out_OldFiles
この場合、よく使うファイルだけ*.conf
でなくディレクトリも選択しますSub_In_2.conf
。すべてのオプション(ファイルとディレクトリ)をNewDir
このディレクトリの下に新しく作成されたディレクトリにコピーしますOut
。
このオプション-a
には -r オプションも含まれます (ディレクトリに再帰)。
-a, --archive archive mode; equals -rlptgoD (no -H,-A,-X)
ノート
- 再帰オプション
rsync
は-アル字型(いいえ-アル字型)。 - -r と -R は
cp
同じオプションに対応します。 - このオプションは
-v
必須ではなく、いくつかの追加情報を提供するだけです。 - ソースホストとターゲットホスト
rsync
の2つの異なるコンピュータ間で使用できます。host1
host2
最後のコマンドは
rsync -av host1:InputDir host2:OutputDir/NewDirThatDidNotExists