LINUX命令的cp -r 和-R的区别是??

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LINUX命令的cp -r 和-R的区别是??相关的知识,希望对你有一定的参考价值。

rtrt

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命令

参考技术A

1、使用范围不同:在Makefile里会用install,其他地方会用cp命令。如果目标文件存在,cp会先清空文件后往里写入新文件,而install则会先删除掉原先的文件然后写入新文件。

2、权限不同:install命令会恰当地处理文件权限的问题。比如说,install-c会把目标文件的权限设置为rwxr-xr-x;

3、信息不同:install命令可以打印出更多更合适的debug信息,还会自动处理SElinux上下文的问题。

扩展资料:

进程和线程的区别进程就是一个“执行中的程序”,可以申请和拥有系统资源。进程作为分配资源的基本单位线程是进程中的一部分,进程中可以包含若干个线程。

可以利用进程所拥有的资源。线程作为独立运行和独立调度的基本单位。由于线程比进程更小,基本上不拥有系统资源,故对它的调度所付出的开销就会小得多。

参考技术B   基本上,在Makefile里会用到install,其他地方会用cp命令。
完成同样的任务——拷贝文件,两者之间的区别主要如下:
1、最重要的一点,如果目标文件存在,cp会先清空文件后往里写入新文件,而install则会先删除掉原先的文件然后写入新文件。这是因为往正在
使用的文件中写入内容可能会导致一些问题,比如说写入正在执行的文件可能会失败,比如说往已经在持续写入的文件句柄中写入新文件会产生错误的文件。而使用
install先删除后写入(会生成新的文件句柄)的方式去安装就能避免这些问题了;
2、install命令会恰当地处理文件权限的问题。比如说,install -c会把目标文件的权限设置为rwxr-xr-x;
3、install命令可以打印出更多更合适的debug信息,还会自动处理SElinux上下文的问题。
参考技术C

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:不复制文件,只是生成链接文件。

参考技术D 功能上是等价的。不加-r或者-R的时候,只拷贝文件,不拷贝文件夹;加上后则会拷贝文件夹——包括下一级的子文件夹,以及子文件夹中的子文件夹,余此类推。
另外rm的-R -r功能同上
ls的-R功能同上,-r的功能是结果反向排列

Linux中cp和scp命令的使用方法

Linux为我们提供了两个用于文件copy的命令,一个是cp,一个是scp,但是他们略有不同。

cp --- 主要是用于在同一台电脑上,在不同的目录之间来回copy文件
scp --- 主要是在不同的Linux系统之间来回copy文件

关于cp的具体用法:

命令基本格式:
cp [OPTIONS] SOURCE DEST --- 从源路径copy文件到目的路径
cp [OPTIONS] SOURCE... DIRECTORY --- 将多个源文件copy到指定的目录(多个源文件用空格分隔)

OPTIONS:
-a same as -dpR 尽可能将源文件状态、权限等资料都照原装予以复制,并且是递归copy;
-r 表示递归copy,若source中含有目录名,则将目录下之档案亦皆依序拷贝至目的地;
-f 表示force,若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制;
范例:
1. 将档案 aaa 复制(已存在),并命名为 bbb:
cp aaa bbb
2. 将所有的C语言程式拷贝至 Finished 子目录中:
cp *.c Finished/

关于scp的具体用法:

不同的Linux之间copy文件常用有3种方法:

第一种就是ftp,也就是其中一台Linux安装ftp Server,这样可以在另外一台机器使用ftp的client程序来进行文件的copy。
第二种方法就是采用samba服务,类似Windows文件copy 的方式来操作,比较简洁方便。
第三种就是利用scp命令来进行文件复制。


scp是有Security的文件copy,基于ssh登录。

命令基本格式:
scp [OPTIONS] file_source file_target


OPTIONS:
-v 和大多数 linux 命令中的 -v 意思一样 , 用来显示进度 . 可以用来查看连接、认证、 或是配置错误
-C 使能压缩选项
-P 选择端口 . 注意 -p 已经被 rcp 使用


从 本地 复制到 远程
scp /home/daisy/full.tar.gz [email protected]:/home/root (然后会提示你输入另外那台172.19.2.75主机的root用户的登录密码,接着就开始copy了),复制目录加参数 -r 即可

从 远程 复制到 本地
scp [email protected]/172.19.2.75:/home/root/full.tar.gz /home/daisy/full.tar.gz

以下是补充:

命令:cp

使用权限:所有使用者

使用方式:

cp [options] source dest

cp [options] source... directory

说明:将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录。

把计

-a 尽可能将档案状态、权限等资料都照原状予以复制。

-r 若 source 中含有目录名,则将目录下之档案亦皆依序拷贝至目的地。

-f 若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。

范例:

将档案 aaa 复制(已存在),并命名为 bbb :

cp aaa bbb

将所有的C语言程式拷贝至 Finished 子目录中 :

cp *.c Finished

命令:scp

不同的Linux之间copy文件常用有3种方法:

第一种就是ftp,也就是其中一台Linux安装ftp Server,这样可以另外一台使用ftp的client程序来进行文件的copy。

第二种方法就是采用samba服务,类似Windows文件copy 的方式来操作,比较简洁方便。

第三种就是利用scp命令来进行文件复制。

scp是有Security的文件copy,基于ssh登录。操作起来比较方便,比如要把当前一个文件copy到远程另外一台主机上,可以如下命令。

scp /home/daisy/full.tar.gz [email protected]:/home/root

然后会提示你输入另外那台172.19.2.75主机的root用户的登录密码,接着就开始copy了。

如果想反过来操作,把文件从远程主机copy到当前系统,也很简单。
linux之cp/scp命令+scp命令详解(转) - linmaogan - 独木★不成林scp [email protected]/full.tar.gz 172.19.2.75:/home/root/full.tar.gz home/daisy/full.tar.gz

linux 的 scp 命令 可以 在 linux 之间复制 文件 和 目录;

==================
scp 命令
==================
scp 可以在 2个 linux 主机间复制文件;

命令基本格式:
scp [可选参数] file_source file_target

======
从 本地 复制到 远程
======
* 复制文件:
* 命令格式:
scp local_file [email protected]_ip:remote_folder
或者
scp local_file [email protected]_ip:remote_file
或者
scp local_file remote_ip:remote_folder
或者
scp local_file remote_ip:remote_file

第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;
第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名;
* 例子:
scp /home/space/music/1.mp3 [email protected]:/home/root/others/music
scp /home/space/music/1.mp3 [email protected]:/home/root/others/music/001.mp3
scp /home/space/music/1.mp3 www.cumt.edu.cn:/home/root/others/music
scp /home/space/music/1.mp3 www.cumt.edu.cn:/home/root/others/music/001.mp3

* 复制目录:
* 命令格式:
scp -r local_folder [email protected]_ip:remote_folder
或者
scp -r local_folder remote_ip:remote_folder

第1个指定了用户名,命令执行后需要再输入密码;
第2个没有指定用户名,命令执行后需要输入用户名和密码;
* 例子:
scp -r /home/space/music/ [email protected]:/home/root/others/
scp -r /home/space/music/ www.cumt.edu.cn:/home/root/others/

上面 命令 将 本地 music 目录 复制 到 远程 others 目录下,即复制后有 远程 有 ../others/music/ 目录


======
从 远程 复制到 本地
======
从 远程 复制到 本地,只要将 从 本地 复制到 远程 的命令 的 后2个参数 调换顺序 即可;

例如:
scp [email protected]:/home/root/others/music /home/space/music/1.mp3
scp -r www.cumt.edu.cn:/home/root/others/ /home/space/music/

最简单的应用如下 :

scp 本地用户名 @IP 地址 : 文件名 1 远程用户名 @IP 地址 : 文件名 2

[ 本地用户名 @IP 地址 :] 可以不输入 , 可能需要输入远程用户名所对应的密码 .

可能有用的几个参数 :

-v 和大多数 linux 命令中的 -v 意思一样 , 用来显示进度 . 可以用来查看连接 , 认证 , 或是配置错误 .

-C 使能压缩选项 .

-P 选择端口 . 注意 -p 已经被 rcp 使用 .

-4 强行使用 IPV4 地址 .

-6 强行使用 IPV6 地址 .

注意两点:
1.如果远程服务器防火墙有特殊限制,scp便要走特殊端口,具体用什么端口视情况而定,命令格式如下:
#scp -p 4588 [email protected]:/usr/local/sin.sh /home/administrator
2.使用scp要注意所使用的用户是否具有可读取远程服务器相应文件的权限。
















































































































































































以上是关于LINUX命令的cp -r 和-R的区别是??的主要内容,如果未能解决你的问题,请参考以下文章

后端面试之Linux-cp和mv命令的区别

Linux远程复制scp和rsync区别

linux操作系统文件类型有哪几种,有啥区别?

Linux命令 文件备份归档恢复

Linux基础命令:mv

linux中的cd ..和cd -命令有啥区别?