[[7-Zip]]

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

次のリビジョン
前のリビジョン
software:7zip [2017/09/26] – 作成 ikatakossoftware:7zip [2017/09/27] (現在) ikatakos
行 3: 行 3:
 [[wpjp>7-Zip]] [[wpjp>7-Zip]]
  
-圧縮・解凍ツールアーカイバ。圧縮率の高い[[wpjp>7z]]というフォーマットを作り、広めた。+Windows向け圧縮・解凍ツールアーカイバ。圧縮率の高い[[wpjp>7z]]というフォーマットを作り、広めた。
  
 GUIからも操作できるが、コマンドラインの方が大量ファイルの連続処理などに向いているため、例をメモ。 GUIからも操作できるが、コマンドラインの方が大量ファイルの連続処理などに向いているため、例をメモ。
  
-[[https://sevenzip.osdn.jp/chm/cmdline/|Command Line Version User's Guide]]+  * [[https://sevenzip.osdn.jp/chm/cmdline/|Command Line Version User's Guide]]
  
 =====圧縮===== =====圧縮=====
 +====基本====
  
-====パスワード====+  > 7z a (※) (圧縮ファイル名) (※) (元ファイル/フォルダ名 複数可) (※)
  
-''-p''の後空白指定+==ワイルドカード== 
 +ファイル名・フォルダ名はワイルドカード使える。パーサは7zの独自実装なので、OS標準のものと微妙に異なるが、細いことなので、特気にしなくてもよい。一応、OS標準では「*.*」は全てのファイルを表すが、7Zipではドットが含まれていないとHitしない。
  
-  > 7z a -t7z -pPASSWORD target.7z path/to/source+==スイッチ== 
 +''(※)''の位置には、任意でスイッチと呼ばれる追加オプションを設定できる。スイッチは「-」にアルファベット数文字を加えた形であり、設定値がある場合は空白を**置かず**直後に続けて指定する。
  
-====特定の名前のファイルのみ圧縮====+  * [[https://sevenzip.osdn.jp/chm/cmdline/switches/index.htm|Command Line Switches]]
  
-  > 7z -t7z target.7z path/to/source/(filename or wildcard) -r+==上書きでなく追加== 
 +最初の引数である「a」が圧縮を示すコマンドだが、これはAddの略である。つまり、同名の圧縮ファイルが既に存在するとそれに加える形で更新されてしまう。
  
-''-r''を付けないと、source直下のファイルのみ対象になる。+<code> 
 +    > 7z a a.7z hotate.gif 
 +                │ 
 +┌─ a.7z ─┐  ↓ ┌─ a.7z ─┐ 
 +│ika.png   │====>│ika.png   │ 
 +│tako.jpg  │     │tako.jpg  │ 
 +└─────┘     │hotate.gif│ 
 +                   └─────┘ 
 +</code>
  
-含みたいファイルひとつのwildcardだけで表現しない場合は、''-i''を用いる。+既存ファイルを上書したり、ファイル名を変えるよう機能は無ため、既存ファイルがある可能性がある場合は事前に確認する必要がある。
  
-[[https://sevenzip.osdn.jp/chm/cmdline/switches/include.htm|-i (Include filenames) switch]]+アーカイブ内でのパスが等しい場合は上書きされるため、中身が全く同じだとわかっている場合は、そのまま更新してもよい。
  
-  > 7z a -t7z target.7z path/to/source/(wildcard) -r -ir!(wildcard) +====パスワード====
-  > 7z a -t7z target.7z path/to/source/(wildcard) -r -ir@(path/to/filelist)+
  
-詳細な指定方法は、次の「特定の名前のファイルのみ除外」参照+''-p''スイッチで指定 
 + 
 +  > 7z a -pPASSWORD target.7z path/to/source 
 + 
 +====特定の名前のファイルのみ圧縮==== 
 + 
 +  sourceフォルダ直下の.txtのみ圧縮 
 +  > 7z a target.7z path/to/source/*.txt 
 +   
 +  sourceフォルダ以下の.txtのみ圧縮 
 +  > 7z a target.7z path/to/source/*.txt -r 
 + 
 +''-r''付けると、source以下のサブフォルダも再帰的に対象になる。
  
 ====特定の名前のファイルのみ除外==== ====特定の名前のファイルのみ除外====
行 36: 行 59:
 [[https://sevenzip.osdn.jp/chm/cmdline/switches/exclude.htm|-x (Exclude filenames) switch]] [[https://sevenzip.osdn.jp/chm/cmdline/switches/exclude.htm|-x (Exclude filenames) switch]]
  
-  > 7z a -t7z target.7z path/to/source -xr(filename) +  > 7z a target.7z path/to/source -xr!(wildcard) 
-  > 7z a -t7z target.7z path/to/source -xr!(wildcard) +  > 7z a target.7z path/to/source -xr@(path/to/listfile) 
-  > 7z a -t7z target.7z path/to/source -xr@(path/to/listfile)+ 
 +==再帰フラグ== 
 +''-x''スイッチのみの場合、圧縮ファイル内でのルートからの相対パスのみが除外判定対象となる。 
 + 
 +加えて''r''を指定すると、フォルダを再帰的に辿って探す。どのフォルダがルートとなるかわかりづらい場合もあるので、不都合が無ければ基本は指定しておいた方がよい。
  
-''-x''に加えて''r''を指定しないと再帰的に辿ってくれないの普通指定。+<code> 
 +C:\cwd                > 7z a a.7z dir1 -x!exclude.txt      => 除外されない 
 + `- dir1              > 7z a a.7z dir1 -xr!exclude.txt     => 除外される(両方) 
 +    |- include.txt    > 7z a a.7z dir1 -x!dir1\exclude.txt => 除外される(dir1直下のみ) 
 +    |- exclude.txt    > 7z a a.7z dir1\*.txt -x!exclude.txt   
 +    `- dir2             => 除外されない(ルートはdir1ため) 
 +       |- include.txt > 7z a a.7z C:\cwd\dir1\*.txt -x!exclude.txt 
 +       `- exclude.txt   => 除外される(この場合ルート各.txtとなる) 
 +</code>
  
 +==ワイルドカード、ファイルリスト==
 ''!''でワイルドカード、''@''で1行に1ファイル名を書いたリストファイルを指定できる ''!''でワイルドカード、''@''で1行に1ファイル名を書いたリストファイルを指定できる
  
 なお、Windowsのバッチ内で遅延評価を行っている場合は、''!''が特殊な意味を持つのでエスケープの必要がある。 なお、Windowsのバッチ内で遅延評価を行っている場合は、''!''が特殊な意味を持つのでエスケープの必要がある。
  
-  > 7z a -t7z target.7z path/to/source -xr^^!(wildcard)+  > 7z a target.7z path/to/source -xr^^!(wildcard)
  
-ファイル名にスペースを含む場合、全体をクオートする。+==空白を含むパス== 
 +ファイル・フォルダ名にスペースを含む場合、全体をクオートするか、パスの中のファイル・フォルダ名をクオートする。
  
-  > 7z a -t7z target.7z path/to/source "-xr!space in vaders.png"+  > 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"
  
  
software/7zip.txt · 最終更新: 2017/09/27 by ikatakos
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0