linux 下 scp 传文件时保留文件夹中的原格式属性
在使用scp命令进行远程文件传输时,-p和-P是两个不同的选项,功能差异如下:
1、-p
(小写 p):保留文件属性
在传输文件时保留原文件的修改时间、访问时间和权限模式。如:
$ scp -p local_file.txt user@server:/path/ # 保留文件时间戳和权限
使用场景:
需要保持文件的原始创建 / 修改时间(如日志文件、配置文件)。
避免因传输导致文件权限丢失(如可执行文件)。
2、-P
(大写 P):指定 SSH 端口
覆盖默认的 SSH 端口(22),连接到远程服务器的指定端口。如:
$ scp -P 2222 local_file.txt user@server:/path/ # 连接服务器的2222端口
使用场景:
服务器的 SSH 服务运行在非标准端口(如 2222、5000 等)。
防火墙限制,仅开放了特定 SSH 端口。
如果这两者同时使用,会长成这样:
$ scp -p -P 2222 local_file.txt user@server:/path/ #同时保留文件属性并指定端口
注:可简写为
$ scp -pP 2222 local_file.txt user@server:/path/