linux cp命令的使用。

cp是Linux中非常常用的一个命令,今天往服务器拷贝文件用了scp但碰到了一些问题,scp与cp的参数大多数是相同的

cp -r 是对一个文件夹内的文件进行拷贝,第一个参数是源文件夹,第二个参数为目标文件夹。

问题出在文件夹后面是否带/,就我自己使用来看,第一个参数是否带/很影响使用,第二个好像无所谓。

当我们想复制一个文件夹的时候, 可以通过cp -r source/ destination或者cp -r source destination/

通过source不带/的情况下,假如没有destination文件夹,第一次会新建destination文件夹,然后将source文件价的内容复制到destination文件夹中

如果带了/使用的效果还是相同的。

但如果已经存在了destination文件夹,那带不带/就完全是两码事情了,带/表示复制的是文件夹里面的内容到destination目录中,如果不带/就表示将source的目录文件夹复制到destination目录中。

做个示例

cp -r source destination

cp -r source/ destination

如果不存在destination文件夹的情况下,第一次执行该命令,效果都是相同的,新建了destination的文件夹,然后将文件复制到destination文件夹中。

第二次就不一样了,因为已经存在了destination了,所以第一个命令会将source的文件夹复制到destination中。

第二个命令就没关系了,只不过是重复有复制了一次文件到destination文件夹下,可以理解同步了一下destination问价下内容与source的关系.

所以简单来说要复制文件夹就不要带/,复制文件夹下面的内容就带/,希望这次笔记能够让我记住了 

原文地址:https://www.cnblogs.com/sidianok/p/15687975.html