Linux对文件夹操作(复制,移动)

这篇具有很好参考价值的文章主要介绍了Linux对文件夹操作(复制,移动)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、复制文件夹cp

cp -a vue vue-copy

将vue 文件夹下面的所有文件,复制到同目录下vue-copy文件夹下面
Linux对文件夹操作(复制,移动)

  • -a:相当于 -d、-p、-r 选项的集合,这几个选项我们一一介绍;
  • -d:如果源文件为软链接(对硬链接无效),则复制出的目标文件也为软链接;
  • -i:询问,如果目标文件已经存在,则会询问是否覆盖;
  • -l:把目标文件建立为源文件的硬链接文件,而不是复制源文件;
  • -s:把目标文件建立为源文件的软链接文件,而不是复制源文件;
  • -p:复制后目标文件保留源文件的属性(包括所有者、所属组、权限和时间);
  • -r:递归复制,用于复制目录;
  • -u:若目标文件比源文件有差异,则使用该选项可以更新目标文件,此选项可用于对文件的升级和备用。

1、cp 命令基本用法

cp 命令既可以复制文件,也可以复制目录。我们先来看看如何复制文件,例如:

[root@localhost ~]# touch cangls
#建立源文件
[root@localhost ~]# cp cangls /tmp/
#把源文件不改名复制到 /tmp/ 目录下

如果需要改名复制,则命令如下:

[root@localhost ~]# cp cangls /tmp/bols
#改名复制

如果复制的目标位置已经存在同名的文件,则会提示是否覆盖,因为 cp 命令默认执行的是“cp -i”的别名,例如:

[root@localhost ~]# cp cangls /tmp/
cp:是否覆盖"/tmp/cangls"?y
#目标位置有同名文件,所以会提示是否覆盖

接下来我们看看如何复制目录,其实复制目录只需使用“-r”选项即可,例如:

[root@localhost ~]# mkdir movie
#建立测试目录
[root@localhost ~]# cp -r /root/movie/ /tmp/
#目录原名复制

二、移动文件夹mv

[root@localhost ~]# mv 【选项】 源文件 目标文件

移动之后,源文件会被删除,类似剪切

mv a.txt dist 

移动a.txt文件到dist文件夹下面

  • -f:强制覆盖,如果目标文件已经存在,则不询问,直接强制覆盖;
  • -i:交互移动,如果目标文件已经存在,则询问用户是否覆盖(默认选项);
  • -n:如果目标文件已经存在,则不会覆盖移动,而且不询问用户;
  • -v:显示文件或目录的移动过程;
  • -u:若目标文件已经存在,但两者相比,源文件更新,则会对目标文件进行升级;

【例 1】移动文件或目录。

[root@localhost ~]# mv cangls /tmp
#移动之后,源文件会被删除,类似剪切
[root@localhost ~]# mkdir movie
[root@localhost ~]# mv movie/ /tmp
#也可以移动目录。和 rm、cp 不同的是,mv 移动目录不需要加入 "-r" 选项

如果移动的目标位置已经存在同名的文件,则同样会提示是否覆盖,因为 mv 命令默认执行的也是 “mv -i” 的别名,例如:

[root@localhost ~]# touch cangls
#重新建立文件
[root@localhost ~]# mv cangls /tmp
mv:是否覆盖"tmp/cangls"?y
#由于 /tmp 目录下已经存在 cangls 文件,所以会提示是否覆盖,需要手工输入 y 覆盖移动

【例 2】强制移动。
之前说过,如果目标目录下已经存在同名文件,则会提示是否覆盖,需要手工确认。这时如果移动的同名文件较多,则需要一个一个文件进行确认,很不方便。

如果我们确认需要覆盖已经存在的同名文件,则可以使用 “-f” 选项进行强制移动,这就不再需要用户手工确认了。例如:

[root@localhost ~]# touch cangls
#重新建立文件
[root@localhost ~]# mv -f cangls /tmp
#就算 /tmp/ 目录下已经存在同名的文件,由于"-f"选项的作用,所以会强制覆盖

【例 3】不覆盖移动。
既然可以强制覆盖移动,那也有可能需要不覆盖的移动。如果需要移动几百个同名文件,但是不想覆盖,这时就需要 “-n” 选项的帮助了。例如:

[root@localhost ~]# ls /tmp
/tmp/bols /tmp/cangls
#在/tmp/目录下已经存在bols、cangls文件了
[root@localhost ~]# mv -vn bols cangls lmls /tmp/、
"lmls"->"/tmp/lmls"
#再向 /tmp/ 目录中移动同名文件,如果使用了 "-n" 选项,则可以看到只移动了 lmls,而同名的 bols 和 cangls 并没有移动("-v" 选项用于显示移动过程)

三、修改文件的名称mv

mv a.txt b.txt

将a.txt 的文件名修改为b.txt的文件名, 里面的内容不会修改
Linux对文件夹操作(复制,移动)文章来源地址https://www.toymoban.com/news/detail-607230.html

到了这里,关于Linux对文件夹操作(复制,移动)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 用python实现新建文件夹及移动、复制文件

    一.移动文件时遇到的问题 目标: 根据文件名中的年份判断,将同一个文件夹下的所有文件分别移动到新建的相应年份的文件夹中。 1.提取文件名: 先用.划分,提取前面一部分,之后用_划分,提取第4部分,最后提取年月日中的年份。 !!![a:b]是提取从a到b-1之间的数,而

    2023年04月19日
    浏览(45)
  • 【运维】Linux 跨服务器复制文件文件夹

    如果是云服务 建议用内网ip scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。当你服务器硬盘变为只读 read only system时,用scp可以帮你把文件移出来

    2024年02月08日
    浏览(74)
  • linux怎么复制文件到另一个文件夹

    1、linux怎么复制文件到另一个文件夹 2、Linux怎么复制文件进入文件系统中? 3、在Linux系统中,要将文件复制到另一个目录中,为防止意外覆盖相同文件名... 4、linux下怎样复制文件并且重命名文件? 可以使用cp命令来实现文件复制。例如,如果要将文件filetxt复制到文件夹folder2中,

    2024年02月10日
    浏览(50)
  • Linux移动文件和文件夹(目录)命令

    命令mv 英文move 翻译移动 mv命令可以移动文件或文件夹(目录),也可以重命令(覆盖)文件。 1. 移动文件/重命名 单纯地移动某一个文件直接使用: 这个方法也可以用来修改文件的名称。 2. 移动文件夹(目录)下的内容 如要移动某个文件夹下的 某个内容: 即可移走###内容

    2024年02月06日
    浏览(50)
  • Centos Linux带进度条复制(同步)文件和文件夹

    centos linux 内建文件复制/备份命令 rsync 目的:我想从一个磁盘复制一堆文件到另一个磁盘,不希望改变文件的属性(尤其是所有者、还有创建时间、修改时间),最好还得能给我显示进度条。文件太多了,好几百GB。 命令(酌情,没有备份需求不推荐这个方法):rsync -avp -

    2024年02月13日
    浏览(47)
  • Linux下复制一个大于1T的文件夹命令

    用netcat通过socket把流传送出去就可以搞定了。 需要发送文件的机器: 接收的机器: 文件夹的话前面弄个管道就行了: 发送的机器: 接收的机器: rsync mv cp

    2024年02月08日
    浏览(46)
  • linux每天自动创建以当天日期为名称的文件夹并向里面进行复制文件的脚本

    先创建一个shell脚本文件,创建在哪个文件夹自定义,我创建在/usr/local/文件夹里的: 1、输入:vim /usr/local/date.sh             2、进入date.sh后: 第一种写法: 第二种优化后的写法: 两种写法用一种就

    2024年02月15日
    浏览(64)
  • 【经验】Git|Linux终端git太慢,改hosts、复制文件夹、用镜像源?不不不不不

      有个同学问我Linux下想要克隆一个仓库怎么办,并给我发了一个word,记录了他的操作。看完之后我的血压都上来了,遂记之。   下文分成两种情况,克隆一两个仓库,和克隆一大堆仓库。   这种情况有超级多解决办法,介绍几种常用的(以实用性排序):   对于

    2024年02月16日
    浏览(50)
  • VMware打开共享虚拟机后找不到/mnt/hgfs/文件夹,以及不能拖拽/复制粘贴等操作,ubuntu不能安装VMware tools

    我的问题出现原因是,安装ubuntn虚拟机的时候VMware tools没有安装好,需要重新安装,但安装选项是暗的,不能操作。 类似这种情况,虚拟机开启时也是,因为我虚拟机已经装好了,开启时是亮的,所以我在挂起时截的图。如果虚拟机开启的时候是亮的直接点击使用就好了。

    2024年02月04日
    浏览(70)
  • python怎么把一个文件夹内的文件复制到另外一个文件夹(进阶重命名复制)

       需求 :把一个文件夹内(包含子文件夹)的所有文件复制到另一个文件夹下 注 :如果不需要复制文件夹内的子文件夹可删除下面这2行 if os.path.isdir(fulldir): # 目录,递归   FindFile(fulldir)引用   一、把一个文件夹内(包含子文件夹)指定后缀的文件复制到另一个文件夹  

    2024年02月13日
    浏览(65)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包