将 tar.gz 文件解压到某个目录,如果不存在则创建该目录

将 tar.gz 文件解压到某个目录,如果不存在则创建该目录

我知道我能跑

$ tar xf somefile.tar.gz -C somedir

将 tar.gz 文件解压到 somedir,但是这需要 somedir 首先存在。

如果目录不存在,有没有办法提取到目录并动态创建目录?

答案1

使用 GNUtar命令,您可以执行以下操作:

tar -xf somefile.tar.gz --one-top-level=somedir

man 1 tar

  --one-top-level[=DIR]
       Extract all files into DIR, or, if used without argument, into a subdirectory named
       by  the  base name of the archive (minus standard compression suffixes recognizable
       by --auto-compress).

相关内容