linux命令中的cp和scp命令的区别?

linux命令中的cp和scp命令的区别?,第1张

一个是本地 , 一个是远程。

cp 是普通的文件复制scp 是通过ssh 本机和其他电脑上的复制

scp是secure copy,也是一个复制命令,是与ssh有关的。

scp user@ip:/dir/file file

或者:scp file user@ip:/dir/file

要输入user在远端用户的密码。

cp ,使用权限:所有使用者

使用方式:

cp [options] source dest

cp [options] source... directory

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

关于CP的具体使用办法:

命令基本格式: 

cp [OPTIONS] SOURCE DEST --- 从源路径copy文件到目的路径 

cp [OPTIONS] SOURCE... DIRECTORY --- 将多个源文件copy到指定的目录(多个源文件用空格分隔)

OPTIONS:

-a same as -dpR 尽可能将源文件状态、权限等资料都照原装予以复制,并且是递归copy; 

-r 表示递归copy,若source中含有目录名,则将目录下之档案亦皆依序拷贝至目的地; 

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

关于SCP的具体使用办法:

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

用于复制文件或目录。

常用参数:

-f force:强行复制文件或目录,不管文件或目录是否存在

-d:复制时保留文件链接

-i -interactive:覆盖文件之前先询问用户

-r:递归处理,将指定目录下的文件与子目录一并处理,若源文件或目录的新盖不属于目录或符号链接,则一律视为普通文件处理。

我们平时在 Linux 中使用 cp 命令时,当把文件从一个目录复制到另一个目录,且目录中具有同名文件时,系统会提示输入 y 来确认是否覆盖同名文件。

如果文件少的话,也无关紧要,但文件多的话,要一个一个确认简直太累了。更要命的是,即使我们加了 -rf 参数,还是会提示。

为什么会这样呢?

原因就是 cp 命令被系统设置了 别名

我们可以查看一下:

也就是说,我们平时使用的 cp 命令,实际上是 cp -i 。

那 -i 参数是什么意思呢?

就是在覆盖之前会给一个提示,这应该算是系统的一个保险措施。

那如果希望进行强制复制,不想一个一个输入 y ,有什么办法呢?

使用原生命令:

取消别名:

这样再使用 cp -rf 的时候就不会提示确认了。

但需要注意的是,使用完之后记得把别名恢复。

这里更推荐大家使用办法一,因为命令简单,而且还不会造成忘记恢复别名而带来的风险。

以上就是本文的全部内容,如果觉得还不错的话,欢迎 点赞 转发 关注 ,感谢支持。

推荐阅读:


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/5913542.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-08
下一篇2023-03-08

发表评论

登录后才能评论

评论列表(0条)

    保存