[解決済み] Rsyncのincludeオプションとexcludeオプションを使って、ディレクトリとファイルをパターン別にincludeする。
質問
を取得するのに問題があります。
rsync
の構文が正しいかどうか、そして私のシナリオが実際に
rsync
. まず、確認したのは
rsync
は、私のローカルホストと私のリモートホストの間で正常に動作しています。ディレクトリを直接同期させると、正常に動作します。
私のファイルシステムはこんな感じです。
uploads/
1260000000/
file_11_00.jpg
file_11_01.jpg
file_12_00.jpg
1270000000/
file_11_00.jpg
file_11_01.jpg
file_12_00.jpg
1280000000/
file_11_00.jpg
file_11_01.jpg
file_12_00.jpg
私は、サブディレクトリ内の "file_11_" で始まるファイルに対してのみ rsync を実行し、サブディレクトリ内のこれらすべてのファイルを同期するために、1 つの rsync ジョブを実行できるようにしたいのです。
試しているコマンドは以下の通りです。
rsync -nrv --include="**/file_11*.jpg" --exclude="*" /Storage/uploads/ /website/uploads/
この結果
0
ファイルを転送するようにマークしています。他にも様々な組み合わせで
--include
と
--exclude
ステートメントを使用しても、結果が得られなかったり、includeやexcludeオプションが設定されていないかのようにすべてが取得されました。
どなたか心当たりのある方はいらっしゃいますか?
解決方法は?
問題は
--exclude="*"
は、(例えば)除外するように言っています。
1260000000/
というディレクトリがあるので
rsync
はそのディレクトリの中身を調べないので、そのディレクトリにあるファイルが
--include
.
あなたの望むものに最も近いのは、これだと思います。
rsync -nrv --include="*/" --include="file_11*.jpg" --exclude="*" /Storage/uploads/ /website/uploads/
(これはすべてのディレクトリと
file_11*.jpg
ただし、他のファイルは含まれない)、または
たぶん
これを
rsync -nrv --include="/[0-9][0-9][0-9]0000000/" --include="file_11*.jpg" --exclude="*" /Storage/uploads/ /website/uploads/
(同じコンセプトですが、インクルードするディレクトリをより細かく指定します)。
関連
-
[解決済み】ENOENTが「そのようなファイルやディレクトリはありません」という意味であるのはなぜですか?
-
[解決済み] "grep -q" のポイントは?
-
[解決済み] MongoDBへの接続が拒否された errno 111
-
[解決済み] find .コマンドでディレクトリを除外する方法
-
[解決済み] 出力をファイルや標準出力にリダイレクトする方法
-
[解決済み] ls を使用してディレクトリとその合計サイズを一覧表示する
-
[解決済み] grep --exclude/--include構文を使って特定のファイルをgrepしないようにする
-
[解決済み] cpコマンドで特定のディレクトリを除外するには?
-
[解決済み] rsyncを使用する際に、別のsshポートを指定することは可能ですか?
-
[解決済み] 特定のファイルのリストだけをrsyncする方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】 readChar(con, 5L, useBytes = TRUE) のエラー : 接続を開くことができません。
-
[解決済み】リモートLinuxマシンでC++をコンパイルする - "clock skew detected "の警告が表示される
-
[解決済み】stdinがターミナルでないため、疑似ターミナルが割り当てられない
-
[解決済み】sed を使用して部分文字列を抽出する方法
-
[解決済み] chmod: 'my_script.sh' のパーミッションを変更しました。操作が許可されていない
-
[解決済み] "grep -q" のポイントは?
-
[解決済み] bash: cd: そのようなファイルやディレクトリはありません
-
[解決済み] CLIから、ファイルの最終行を表示する
-
[解決済み] ls: 読み込みディレクトリ .: 入出力エラー [閉じた].
-
[解決済み] CMakeエラーです。このプロジェクトでは次の変数が使用されていますが、NOTFOUND に設定されています。