ユーザ用ツール

サイト用ツール


サイドバー

Top

検索タグ

変更履歴

メニュー


linux:7zip

7zip コマンド

インストール

CentOSではEPELリポジトリを利用できるようにする必要がある。
CentOS 6 で EPEL, RPM Fusion, Remi, RepoForge(RPM Forge) リポジトリを利用する

$ sudo yum install p7zip

Fedora

$ sudo dnf install p7zip

7za のヘルプ

$ 7za
7-Zip (a) [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=ja_JP.UTF-8,Utf16=on,HugeFiles=on,64 bits,2 CPUs Intel(R) Xeon(R) Gold 6212U CPU @ 2.40GHz (50657),ASM,AES-NI)

Usage: 7za <command> [<switches>...] <archive_name> [<file_names>...]
       [<@listfiles...>]

<Commands>
  a : Add files to archive
  b : Benchmark
  d : Delete files from archive
  e : Extract files from archive (without using directory names)
  h : Calculate hash values for files
  i : Show information about supported formats
  l : List contents of archive
  rn : Rename files in archive
  t : Test integrity of archive
  u : Update files to archive
  x : eXtract files with full paths

<Switches>
  -- : Stop switches parsing
  -ai[r[-|0]]{@listfile|!wildcard} : Include archives
  -ax[r[-|0]]{@listfile|!wildcard} : eXclude archives
  -ao{a|s|t|u} : set Overwrite mode
  -an : disable archive_name field
  -bb[0-3] : set output log level
  -bd : disable progress indicator
  -bs{o|e|p}{0|1|2} : set output stream for output/error/progress line
  -bt : show execution time statistics
  -i[r[-|0]]{@listfile|!wildcard} : Include filenames
  -m{Parameters} : set compression Method
    -mmt[N] : set number of CPU threads
  -o{Directory} : set Output directory
  -p{Password} : set Password
  -r[-|0] : Recurse subdirectories
  -sa{a|e|s} : set Archive name mode
  -scc{UTF-8|WIN|DOS} : set charset for for console input/output
  -scs{UTF-8|UTF-16LE|UTF-16BE|WIN|DOS|{id}} : set charset for list files
  -scrc[CRC32|CRC64|SHA1|SHA256|*] : set hash function for x, e, h commands
  -sdel : delete files after compression
  -seml[.] : send archive by email
  -sfx[{name}] : Create SFX archive
  -si[{name}] : read data from stdin
  -slp : set Large Pages mode
  -slt : show technical information for l (List) command
  -snh : store hard links as links
  -snl : store symbolic links as links
  -sni : store NT security information
  -sns[-] : store NTFS alternate streams
  -so : write data to stdout
  -spd : disable wildcard matching for file names
  -spe : eliminate duplication of root folder for extract command
  -spf : use fully qualified file paths
  -ssc[-] : set sensitive case mode
  -ssw : compress shared files
  -stl : set archive timestamp from the most recently modified file
  -stm{HexMask} : set CPU thread affinity mask (hexadecimal number)
  -stx{Type} : exclude archive type
  -t{Type} : Set type of archive
  -u[-][p#][q#][r#][x#][y#][z#][!newArchiveName] : Update options
  -v{Size}[b|k|m|g] : Create volumes
  -w[{path}] : assign Work directory. Empty path means a temporary directory
  -x[r[-|0]]{@listfile|!wildcard} : eXclude filenames
  -y : assume Yes on all queries

超高圧縮

$ 7za a -mx9 [書庫名.7z] [圧縮対象...]

a アーカイブにファイルを追加する。
-mx[ 0 | 1 | 3 | 5 | 7 | 9 ]

圧縮レベル 圧縮方式 辞書サイズ FastBytes MatchFinder Filter 説明
0 Copy - - - - 無圧縮
1 LZMA2 64 KB 32 HC4 BCJ 最速
3 LZMA2 1 MB 32 HC4 BCJ 高速
5 LZMA2 16 MB 32 BT4 BCJ 標準
7 LZMA2 32 MB 64 BT4 BCJ 最高
9 LZMA2 64 MB 64 BT4 BCJ2 超圧縮

超高圧縮(ファイル名暗号化 + パスワード)

$ 7za a -mhe=on -mx9 -p"password" [書庫名.7z] [圧縮対象...]

-mhe=on アーカイブヘッダーの暗号化を有効にする。
-p パスワードを指定する。

分割圧縮

$ 7za a -mx9 -v512m [書庫名.7z] [圧縮対象...]

a アーカイブにファイルを追加する。
-mx[ 0 | 1 | 3 | 5 | 7 | 9 ]
-v{Size}[b(yte)|k(ilo)|m(ega)|g(iga)]

一覧表示

$ 7za l [書庫名.7z]

7-Zip (A) [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
p7zip Version 9.20 (locale=utf8,Utf16=on,HugeFiles=on,4 CPUs)

Enter password (will not be echoed) :

Listing archive: 書庫名.7z

--
Path = 書庫名.7z
Type = 7z
Method = LZMA 7zAES
Solid = -
Blocks = 1
Physical Size = 472
Headers Size = 200

   Date      Time    Attr         Size   Compressed  Name
------------------- ----- ------------ ------------  ------------------------
2012-03-20 02:46:14 .R..A          586          272  test_file.txt
------------------- ----- ------------ ------------  ------------------------
                                   586          272  1 files, 0 folders

書庫解凍

$ 7za x [書庫名.7z]

x フォルダ構成を出力先に展開する。

$ 7za e [書庫名.7z]

e フォルダ構成を出力先に展開しない。(出力先直下に全ファイルを展開)

出力先を指定して解凍

$ 7za x -y -o/var/work [書庫名.7z]

-y 強制的に処理を続行する。([Yes/no] の入力を全て yes で実行)
-o 出力先を指定する。

参考文献

linux/7zip.txt · 最終更新: 2021/06/09 15:34 by ともやん