Linux 中复制文件到多个目录中

举报
小工匠 发表于 2021/09/10 23:11:17 2021/09/10
【摘要】 文章目录 概述通常写法快捷写法 概述 在学习 Linux 的过程中,对于新手而言总是会使用几个命令来完成一个简单的任务。对正在熟悉使用终端的人这是很容易理解的行为。然而,如果你想要成为一个...

概述

在学习 Linux 的过程中,对于新手而言总是会使用几个命令来完成一个简单的任务。对正在熟悉使用终端的人这是很容易理解的行为。然而,如果你想要成为一个老手,学习一些“快捷命令”会显著减少时间浪费。

在本篇中,我们会用一个简单的方法在 Linux 中用一个命令来将目录复制到多个文件夹中。


通常写法

在 Linux 中,cp 命令常被用于从一个文件夹中复制文件到另一个文件夹中,最简单的语法如下:

# cp [options….] source(s) destination

  
 
  • 1

看下下面的命令,通常你会使用两个不同的命令来将相同的文件复制到不同的文件夹中:

# cp -v /home/xgj/bin/sys_info.sh /home/xgj/test
# cp -v /home/xgj/bin/sys_info.sh /home/xgj/tmp

  
 
  • 1
  • 2

快捷写法

假设你想要复制一个特定文件到 5 个或者更多的文件夹中,这意味着你需要输入 5 次或者更多的cp命令么?

要摆脱这个问题,你可以用 cp 命令与 echo命令、管道、xargs 命令一起使用:

# echo /home/xgj/test/ /home/xgj/tmp | xargs -n 1 cp -v /home/xgj/bin/sys_info.sh

  
 
  • 1

上面的命令中,目录的路径(dir1、dir2、dir3…dirN)被管道作为输入到 xargs 命令中,含义是:

  • -n 1 - 告诉 xargs 命令每个命令行最多使用一个参数,并发送到 cp 命令中。
  • cp – 用于复制文件。
  • -v – 启用详细模式来显示更多复制细节。

更多的 cp、 echo 和 xargs 的 man 所有有用和高级的用法信息:

$ man cp
$ man echo
$ man xargs

  
 
  • 1
  • 2
  • 3

文章来源: artisan.blog.csdn.net,作者:小小工匠,版权归原作者所有,如需转载,请联系作者。

原文链接:artisan.blog.csdn.net/article/details/54424526

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。