[Intern][2019.04.01]Linux 学习心得(2)
程序员文章站
2022-05-11 10:35:55
时间过得真是快!二月份入职,现在已经四月份了! 1.tar命令的小坑:当使用通配符*的时候,tar命令报错: Not found in archive Root Cause: tar 命令的执行会先把 *.tar 翻译成 a.tar; b.tar; c.tar.... 然后再添加进整个命令,形成 t ......
时间过得真是快!二月份入职,现在已经四月份了!
==================================================
1.tar命令的小坑:当使用通配符*的时候,tar命令报错: not found in archive
root cause: tar 命令的执行会先把 *.tar 翻译成 a.tar; b.tar; c.tar.... 然后再添加进整个命令,形成 tar -xvf a.tar b.tar c.tar .... 的结构再执行tar,然而该指令还有一个功能是解压缩某包中特定的文件,即 tar -xvf a.tar xxx.rmvb xxx.docx 。所以我们预期的输出应该是a; b; c; 三个tar文件都被解压缩成功,实际输出却变成在a当中寻找b和c并将二者单独解压缩出来,而在本案例中,a文件并没有b; c; 两个内容,所以出现了上述报错。
solution :在bash中使用管道和xargs: ls *.gz |xargs -n1 tar -xzf
使用循环
(ref = )
上一篇: 这剧情还有反转?