我有几个 tar 文件(~270),它们解压到以下单独的目录结构中:
00001.tar->/00001/001/file1.ima
00002.tar->/00002/001/file2.ima
。 。 。
00270.tar->/00270/001/file270.ima
我想知道 untar 命令中是否有一个说明符,它不仅允许我解压文件,还可以将文件(file1.ima、file2.ima、...file217.ima)移动到一个公共目录。
有人知道怎么做吗?如果这是一件简单的事情,我很抱歉;我在这方面很缺乏经验(显然)。
在此先非常感谢大家提供的任何帮助!
答案1
就像是
for f in {00001..00270}.tar; do
tar xf "$f" --strip-components=1
done
应将它们全部解压到目录中001
(即剥离前导路径组件00001/
等00002/
)。如果您想将它们解压到完全不同的位置,可以使用-C
选项和(可选)剥离两个都原始路径组件
for f in {00001..00270}.tar; do
tar xf "$f" --strip-components=2 -C path/to/other/dir
done
(目录path/to/other/dir
必须已经存在)。