cp -r 的作用是递归,可复制目录,如果复制目录必须加此选项。
cp -R 的作用仅仅是复制目录。
不过cp -r 和-R命令功能上是等价的。不加-r或者-R的时候,只输入命令cp时只拷贝文件,不拷贝文件夹,加上后则会拷贝文件夹——包括下一级的子文件夹,以及子文件夹中的子文件夹,以此类推。
扩展资料:
cp命令还有以下几种用法:
cp -p可以保留权限、属主、时间戳。
cp -d作用为默认copy链接文件是复制链接指向的源文件,-d 复制链接文件本身。
cp -L作用为保存链接所指向的文件,默认cp 就是,不需要-L。
cp -a作用为归档复制,常用于备份,相当于cp -dr --preserve=all。
cp -v作用为复制过程可见。
cp -s 作用为创建新的符号链接文件,指向原符号链接文件,能保证链接文件可以使用
cp -u作用为只复制更新的文件
参考资料:百度经验-linux cp命令
1、使用范围不同:在Makefile里会用install,其他地方会用cp命令。如果目标文件存在,cp会先清空文件后往里写入新文件,而install则会先删除掉原先的文件然后写入新文件。
2、权限不同:install命令会恰当地处理文件权限的问题。比如说,install-c会把目标文件的权限设置为rwxr-xr-x;
3、信息不同:install命令可以打印出更多更合适的debug信息,还会自动处理SElinux上下文的问题。
扩展资料:
进程和线程的区别进程就是一个“执行中的程序”,可以申请和拥有系统资源。进程作为分配资源的基本单位线程是进程中的一部分,进程中可以包含若干个线程。
可以利用进程所拥有的资源。线程作为独立运行和独立调度的基本单位。由于线程比进程更小,基本上不拥有系统资源,故对它的调度所付出的开销就会小得多。
基本上,在Makefile里会用到install,其他地方会用cp命令。
完成同样的任务——拷贝文件,两者之间的区别主要如下:
1、最重要的一点,如果目标文件存在,cp会先清空文件后往里写入新文件,而install则会先删除掉原先的文件然后写入新文件。这是因为往正在
使用的文件中写入内容可能会导致一些问题,比如说写入正在执行的文件可能会失败,比如说往已经在持续写入的文件句柄中写入新文件会产生错误的文件。而使用
install先删除后写入(会生成新的文件句柄)的方式去安装就能避免这些问题了;
2、install命令会恰当地处理文件权限的问题。比如说,install -c会把目标文件的权限设置为rwxr-xr-x;
3、install命令可以打印出更多更合适的debug信息,还会自动处理SElinux上下文的问题。
Linux命令的cp -r和-R的区别为:复制不同、覆盖不同、识别依据不同。
1、复制不同
-r:既复制当前目录下的文件,也复制当前目录下的文件夹。
-R:只复制当前目录下的文件,不复制当前目录下的文件夹。
2、覆盖不同
-r:含文件的文件夹会覆盖不含文件的同名文件夹,文件也会覆盖。
-R:不会覆盖含内容的文件夹,但是会覆盖同名的空文件。
3、识别依据不同
-r:不以文件后缀名作为识别依据。
-R:以文件后缀名作为识别依据。
扩展阅读:
Linux cp命令主要用于复制文件或目录。
语法:
cp [options] source dest 或 cp [options] source... directory
参数:
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接,这里所说的链接相当于Windows系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答y时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件。
功能上是等价的。不加-r或者-R的时候,只拷贝文件,不拷贝文件夹;加上后则会拷贝文件夹——包括下一级的子文件夹,以及子文件夹中的子文件夹,余此类推。
另外rm的-R -r功能同上
ls的-R功能同上,-r的功能是结果反向排列