linux下一次cp多个文件 - Go语言中文社区

linux下一次cp多个文件


linux下使用cp命令拷贝多个文件有几种方法,一是使用通配符,二是使用管道

一.通配符的使用

通配符是一种特殊语句,主要有星号(*)和问号(?),用来模糊搜索文件。主要的通配符有:

*         匹配任意长度的字符串

?        匹配一个长度的字符

[...]     匹配其中指定的字符

[a-z]   匹配指定的字符范围

[^...]    除了其中指定的字符,其他均可匹配

1:*可以代替0个或多个字符。如果需要拷贝以ABC开头的文件,可以输入ABC*,拷贝以ABC开头的所有文件类型的文件,如ABCD.txt、ABCDEFG.exe、ABCZH.dll等。如果只需要拷贝txt文件,则可以输入ABC*.txt,拷贝以ABC为开头的TXT类型的文件,如ABC.txt、ABC12.txt。

2:?则只匹配一个字符,[1,b,8]就匹配括号中的1,b和8,这些都可以混搭使用。在linux2.6.14内核中,ls可以看到如图:

cp多个文件 - beef - beef

如果需要将.IAB .IAD .IMB .IMD和.WK3 这5个文件拷贝到根目录的tmp下,可以使用如下命令:
cp fs2410_kernel_2614.[I,W]?? /tmp
[a-z]就是匹配字母a到z的所有字符,也就是所有小写字母。[^A]就是除了A字符之外,其他字符均可匹配。灵活运用通配符可以方便的拷贝多个文件
二.管道的使用
如果你只是想拷贝最后的10个文件,或者你拷贝的文件没有共同字符,管道或许可以帮的上忙。
命令行中的 |  就是管道,可以把第一个命令输出作为第二个命令的输入
1:ls /usr/bin/ | wc -w
显示/usr/bin/中有多少个文件(不包括隐藏文件,要显示隐藏文件则应该 ls -a /usr/bin/ | wc -w
2:ls | tail -11| xargs -i cp -r {} /tmp/
拷贝最后11个文件到根目录的/tmp/下(如要拷贝头5个文件,则将tail -11 换成 head -5)
wc head tail xargs这些就请自行man手册一下。
版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qingkongyeyue/article/details/52723010
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-03-08 10:23:03
  • 阅读 ( 864 )
  • 分类:Linux

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢