svn(Windowsのサーバー)からデータをエクスポートする必要がありますが、ルートディレクトリを含めたくありません。 例:幹と枝(ないproject1に)私が使用 :svndumpfilter include文で正規表現を使用できますか?
svnadmin dump /svn/ | svndumpfilter include --drop-empty-revs --renumber-revs /project1/trunk /project1/branches | sed "s/Node-path:[ ]project1\//Node-path: /g" -b | sed "s/Node-copyfrom-path:[ ]project1\//Node-copyfrom-path: /g" -b > project1.dump
しかし、私はこのプロセスを自動化したいとbatファイルを作成し
svn
-project1
--trunk
--branches
-project2
--trunk
--branches
--onemorefolder
私は、フォルダをproject1.dumpする含めます:
call svnadmin dump /svn/iss/ -r %2:%3 | svndumpfilter include --drop-empty-revs --renumber-revs /%1/trunk /%1/branches | sed "s/Node-path:[ ]%1\//Node-path: /g" -b | sed "s/Node-copyfrom-path:[ ]%1\//Node-copyfrom-path: /g" -b > %4
しかし、トランクとブランチフォルダの構造体でのみ動作します。 ルートフォルダのすべてのフォルダを含めてこのルートフォルダを除外するにはどうすればよいですか? includeステートメントでregexを使用できますか?おかげさまで あなたは一つとしてsed
コマンドの両方を行うことができ
(あなたが期待するよう、彼らのすべてが機能することを確認するために、別々の個々のビットを試してみてください)答えのため –
感謝。しかし、findは私のためには機能しません。 -tがsvndumpfilterの認識されたパラメータではないというエラーが発生します。 – inser
hmmですが、どこでも '-t'を使用していません...期待どおりの' find'ビットの出力ですか? '%1 -type d -maxdepth 1 -mindepth 1 -printf '"%p "'を試してください。ファイル名に空白がある場合には、すべてのマッチをスペースで区切って1行に出力します。 –