SSH应用整理

SSH通常是在登陆远程服务器时使用,是非常有价值的远程控制工具,本文就SSH相关的一些应用进行整理。

一、SCP进行文件复制

在没有FTP等文件传输工具的情况下,SCP是非常有价值的文件传输工具,可以轻松实现本地和远程服务器之间的文件交互。

1、将本地文件上传到远程服务器

命令格式为:scp /local directory/filename user@server:/directory/filename

在经过身份认证之后,文件将会成功传输到远程服务器

2、将远程服务器上的文件下载到本地

命令格式为:scp user@server:/directory/filename /local directory/filename

备注:如果进行文件夹传输时,命令格式同文件操作,只需要在scp之后加上-r参数

二、SSH管道进行文件传输

虽然SCP可以实现本地和远程服务器之间的文件传输,然而SCP不能跨越子目录,也不能保留文件的所有者和权限位。而SSH在没有登陆交互式会话时,是接收标准输入(STDIN)并将结果打印到标准输出(STDOUT),这就意味着可以通过SSH和管道命令来实现本地和远程服务器之间的数据交互和文件传输。

1、连接SSH时执行控制脚本

在某些情况下,并不需要远程登陆到服务器上,而仅仅是需要启动某个应用脚本,这时只需要在SSH连接中加入相应的命令操作

命令格式为:ssh user@server "cd /directory; mkdir new directory;....."

2、使用SSH上传文件到远程服务器

命令格式为:tar -cvzf - /directory | ssh user@server "cat > file.tar.gz"

或者直接解压:tar -cvf - /directory | ssh user@server "tar -xf -"

PS:在本命令中-是必不可少的,创建压缩包的-的作用是将tar打包后的内容直接显示在标准输出,而并不是将其写入到某个文件中;而解压缩包中“-”的作用是从标准输入中获取压缩包的内容,而不是从某个文件中进行读取。这是个人理解,并没有找到准确的说明,如有读者知道明确说法,烦请告知。

3、使用SSH将远程服务器上的文件拷贝到本地

命令格式为:ssh user@server "cat file.tar.gz" | tar -xf -

或者使用命令:ssh user@server "cd /directory && tar -cvf - /directory" > file.tar.gz


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值