Linux cp 命令
Linux cp(英文全拼:copy file)命令主要用于复制文件或目录。
语法
cp [options] source dest
或
cp [options] source… directory
参数说明:
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答”y”时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件。
实例
使用指令 cp 将当前目录 test/ 下的所有文件复制到新目录 newtest 下,输入如下命令:
$ cp –r test/ newtest
SCP(Secure Copy Protocol)命令的参数及其功能如下:12
- -C:允许压缩数据传输,使用压缩可以加快传输速度。
- -r:递归复制整个目录。
- -P:指定远程主机的SSH端口号,默认为22。
- -p:保留原文件的修改时间、访问时间和访问权限。
- -q:安静模式,不显示传输进度条。
- -l:限制传输速度,单位为Kbps。
- -F:指定一个替代的ssh配置文件。
- -i:从指定文件中读取传输时使用的密钥文件。
- -c:以指定的加密方法进行数据传输。
- -B:使用批处理模式,传输过程中不询问传输口令或短语。
- -v:详细方式显示输出,用于调试连接、验证和配置问题。
- -S:指定加密传输时所使用的程序。
使用示例:
- 复制本地文件到远程主机:
scp local_file remote_username@remote_ip:remote_folder
- 复制远程文件到本地:
scp remote_username@remote_ip:remote_file /local/folder
- 复制本地目录到远程主机:
scp -r local_folder remote_username@remote_ip:remote_folder
- 复制远程目录到本地:
scp -r remote_username@remote_ip:remote_folder /local/folder
<font style="color:rgb(51, 51, 51);background-color:rgb(237, 238, 240);">-P</font>
参数指定端口。
解法1:在命令行中使用-P参数
例如,如果你需要从远程主机的2222端口拷贝文件到本地,你可以这样做:
scp -P port user@remote:/path/to/remote/file /path/to/local/file
scp -P 2222 user@example.com:/path/to/remote/file /path/to/local/fil