服务器下载到本地
通过SSH登录云服务器,并将远程服务器上的某个目录下载到本地指定目录,可以按以下步骤操作:
- 使用ssh命令登录云服务器,假设云服务器IP为192.168.1.100,用户名为root:
ssh root@192.168.1.100
- 输入密码登录后,使用scp命令下载远程目录。例如,下载远程服务器/data/test目录到本地/home/user/downloads目录:
scp -r root@192.168.1.100:/data/test /home/user/downloads
- -r参数表示递归下载整个目录
- root@192.168.1.100:/data/test表示远程服务器的地址和路径
- /home/user/downloads表示本地的下载目标路径
- 输入远程服务器的密码后,就会将/data/test目录下载到本地的/home/user/downloads目录中。
在使用 scp
命令进行上传时,默认情况下,如果目标服务器上已经存在同名文件,scp
将会询问是否覆盖该文件。如果你希望跳过已存在的同名文件,可以使用 -i
参数(--ignore-existing
的缩写)来实现。
使用 -i
参数后,scp
将会忽略目标服务器上已经存在的同名文件,只上传本地目录中在目标服务器上不存在的文件。
本地上传到服务器
假设你要上传本地目录 /path/to/local/directory
到远程服务器的目录 /path/to/destination/directory
,并且希望跳过已存在的同名文件,可以使用以下命令:
scp -r -i /path/to/local/directory username@remote_server:/path/to/destination/directory
其中:
-r
选项用于递归复制整个目录及其子目录。-i
参数用于忽略目标服务器上已存在的同名文件。
请注意,在使用 -i
参数时,scp
不会检查文件内容是否相同,它只会检查文件名是否存在。如果你需要更精确的比较来避免不必要的传输,可以考虑使用其他工具如 rsync
。