在 tar 版本 1.26 上将多个 tar 文件提取到它们自己的目录

在 tar 版本 1.26 上将多个 tar 文件提取到它们自己的目录

我试图通过创建与 tar 文件同名的目录来提取多个 tar 文件。我使用的是 centos,tar 版本为 1.26,不幸的是,由于用户限制,无法将 tar 版本更新到 1.29 或更高版本。所以我无法使用下面的代码片段。

-exec tar xvf {} --one-top-level \;

尝试复制我的 .ZIP 格式的工作代码,但没有成功。

zip 文件的工作代码 -

for file in `ls *.zip`; do unzip $file -d `echo $file | cut -d . -f 1`; done

tar 文件的复制代码 -

for f in 'ls *.tar'; do tar xvf $f -C 'echo $f|cut -d . -f 1'; done

该代码一直有效,直到我通过“tar xvf $f -C”。这可以正确打印文件名 -

for f in 'ls *.tar'; do echo $f|cut -d . -f 1; done

它给出了以下错误 -

$ for f in 'ls *.tar'; do tar xvf $f -C 'echo $f|cut -d . -f 1'; done

tar: ls: 无法打开: 没有这样的文件或目录

tar:错误不可恢复:现在退出

谢谢,

潘卡伊

相关内容