7-zipを使用してディレクトリをバックアップしたいのですが、「。svn」という名前のすべてのディレクトリ(ソースツリー内の任意の場所)を除外したいです。これが可能かどうか、その場合はどのように誰か知っていますか?
7-zipを使用してディレクトリをバックアップしたいのですが、「。svn」という名前のすべてのディレクトリ(ソースツリー内の任意の場所)を除外したいです。これが可能かどうか、その場合はどのように誰か知っていますか?
回答:
すべての.svnディレクトリを除外するには、-xr!?svn\*
スイッチを追加する必要があります
たとえば、次のコマンドは、C:\Project\To\Backup
ディレクトリのバックアップを作成します。ただし、次の条件を満たすフォルダーは除外されます?svn
。
"C:\Program Files\7-Zip\7z.exe" a -r -tzip -y -xr!?svn\* Project.zip C:\Project\To\Backup\*
?
「period-svn」(.svn
)に一致することに注意してくださいSkipMe
。使用するフォルダー内のすべてをスキップするには-xr!SkipMe\*
7-Zipを使用して.svn(または潜在的に_svn)フォルダーを除外する代わりに、svn exportコマンド(SlikSVNの svn.exeを使用)を使用して、作業コピーを一時フォルダーにエクスポートすることをお勧めします。
svn export C:\Path\To\WC C:\Backup\Staging
次に、7-Zipを次のように使用します。
7z.exe a "C:\Parth\To\Archive" "C:\Backup\Staging\*" -bd t7z -v2g -r
次に、ステージングフォルダーを削除します。
これは、ローカルの作業コピーをバックアップするために行うことです。
ファイルまたはディレクトリのリストを使用して、7zipのファイルを除外できます。
/path/to7Zip/7z a -bd f:/backup/backup_2009-08-23_daily.zip home \
'-xr@\path\to\backup_daily_exclude.lst'
除外ファイルは次のようになります。
home\Photos\iPod*
home\dhltd\*
BlogMatrix\Sparks\db\*.archive
home\eclipse\*
.svn
キーは-xrで、特にディレクトリの各レベルに除外リストを再帰的に適用することを示す「r」です。2つの除外ファイルリストを使用することもできます。1つは絶対的なもの、もう1つは再帰的な除外用です。上記は、cygwinで実行されるbashスクリプトからのものです。
使用したとき
"C:\Program Files\7-Zip\7z.exe" a -r -ttar -xr!?git\* aufs2-util.tar aufs2-util\*
最終的には、望まない.gitディレクトリを追加して、
"C:\Program Files\7-Zip\7z.exe" a -r -ttar -xr!?git\ aufs2-util.tar aufs2-util\*
望ましい結果を得ました。
使用したとき
7z a "D:\codebase\w.7z" "D:\codebase\Edison\otm\Webapp" -t7z -mx0 -xr!WEB-INF\*
WEB-INFディレクトリは除外されませんでした。ディレクトリ名の前にアスタリスクを追加する
7z a "D:\codebase\w.7z" "D:\codebase\Edison\otm\Webapp" -t7z -mx0 -xr!*WEB-INF\*
目的の結果が得られました。