Laz*_*zer 8 linux command-line tar flag
$ ls one.tar.gz
one.tar.gz
$ tar -xvfz one.tar.gz
tar: z: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
$ tar -xvzf one.tar.gz
one
$ tar -xzvf one.tar.gz
one
$ tar -zxvf one.tar.gz
one
$
Run Code Online (Sandbox Code Playgroud)
Den*_*son 18
的-f开关需要一个参数(文件名)。如果z出现在 之后,f则将其视为文件名。
tar -xvfz one.tar.gz
Run Code Online (Sandbox Code Playgroud)
是相同的
tar -xvf z one.tar.gz
Run Code Online (Sandbox Code Playgroud)
如果你这样做了:
tar -xvf -z one.tar.gz
Run Code Online (Sandbox Code Playgroud)
then-z会被当作文件名,你会得到类似的错误。
然而,这会奏效:
tar -xvz -f one.tar.gz
Run Code Online (Sandbox Code Playgroud)
在GNUtar手册页指出:
tar 的第一个参数必须是以下选项之一:Acdrtux,后跟任何可选函数。tar 的最后一个参数是应该归档的文件或目录的名称。
请注意,除非输入来自 stdin 或输出到 stdout(在适当的情况下),-f filename否则必须给出选项和参数。虽然手册页暗示顺序是固定的,但实际上选项可以按任何顺序排列。即使是这个奇怪的工作(但它可能不适用于所有版本tar):
tar -v files_to_archive* -f xyz.tar.gz -cz
Run Code Online (Sandbox Code Playgroud)
为了可移植性,最好坚持惯用的参数顺序,甚至去掉连字符:
tar czvf xyz.tar.gz files_to_archive*
Run Code Online (Sandbox Code Playgroud)
小智 6
z可以最后使用:
tar -x -v -f foo.tar.gz -z
Run Code Online (Sandbox Code Playgroud)
但正如@Dennis 所说,f标志需要一个参数。
| 归档时间: |
|
| 查看次数: |
5152 次 |
| 最近记录: |