欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

[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 = )