我有一个存档
*.tar.gz
如何将其解压缩到目标目录中?
最佳答案
如果您使用的是 Gnu,您可以使用选项 -C
(如果您喜欢长选项,则使用 --directory
)来提供您选择的目标目录tar
的版本。该目录应该存在:
mkdir foo
tar -xzf bar.tar.gz -C foo
如果您没有使用能够解压到特定目录的 tar
,您只需在调用 tar
之前 cd
进入目标目录即可>;当然,那么您必须提供存档的完整路径。您可以在作用域子 shell 中执行此操作,以避免影响周围的脚本:
mkdir foo
(cd foo; tar -xzf ../bar.tar.gz) # instead of ../ you can use an absolute path as well
或者,如果存档文件的绝对路径和相对路径都不合适,您也可以使用它在作用域子 shell 之外命名存档:
TARGET_PATH=a/very/complex/path/which/might/even/be/absolute
mkdir -p "$TARGET_PATH"
(cd "$TARGET_PATH"; tar -xzf -) < bar.tar.gz
关于unix - 如何将 tar.gz 解压到另一个目录中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18402395/