文書の過去の版を表示しています。
7-Zip
Windows向け圧縮・解凍ツール兼アーカイバ。圧縮率の高い7zというフォーマットを作り、広めた。
GUIからも操作できるが、コマンドラインの方が大量ファイルの連続処理などに向いているため、例をメモ。
圧縮
パスワード
-p
の後に空白をおかずに指定
> 7z a -pPASSWORD target.7z path/to/source
特定の名前のファイルのみ圧縮
> 7z a target.7z path/to/source/(filename or wildcard) -r
-r
を付けないと、source直下のファイルのみ対象になる。その方がいい場合は取る。
含みたいファイル群をひとつのwildcardだけで表現しきれない場合は、複数並べられる。
> 7z a -r target.7z path/to/source1/(wildcard) path/to/source2/(filename)
特定の名前のファイルのみ除外
> 7z a target.7z path/to/source -xr(filename) > 7z a target.7z path/to/source -xr!(wildcard) > 7z a target.7z path/to/source -xr@(path/to/listfile)
-x
に加えてr
を指定しないと再帰的に辿ってくれないので、普通は指定。
!
でワイルドカード、@
で1行に1ファイル名を書いたリストファイルを指定できる
なお、Windowsのバッチ内で遅延評価を行っている場合は、!
が特殊な意味を持つのでエスケープの必要がある。
> 7z a target.7z path/to/source -xr^^!(wildcard)
ファイル・フォルダ名にスペースを含む場合、全体をクオートするか、パスの中のファイル・フォルダ名だけをクオートしても良い。
> 7z a target.7z path/to/source "-xr!space in vaders.png" > 7z a target.7z path/to/"s o u r c e" -xr!"space in vaders.png"