中国领先的IT技术网站
|
|

Linux下使用SSH命令行传输文件到远程服务器

以前一直在windows下用SSH Secure Shell连接远程服务器,它自带了一个可视化的文件传输工具,跟ftp差不多,但是它也存在一个缺陷,不支持编码的选择,遇到utf8就自动乱码了,另外mac下也没有这个工具,在mac下我用终端登录上去之后,想传个文件上去就犯愁了,难不成要开个ftp?

作者:Magic.C来源:博客园|2017-03-03 09:19

沙龙活动 | 去哪儿、陌陌、ThoughtWorks在自动化运维中的实践!10.28不见不散!


以前一直在windows下用SSH Secure Shell连接远程服务器,它自带了一个可视化的文件传输工具,跟ftp差不多

但是它也存在一个缺陷,不支持编码的选择,遇到utf8就自动乱码了,另外mac下也没有这个工具

在mac下我用终端登录上去之后,想传个文件上去就犯愁了,难不成要开个ftp?

搜了一下,果然有直接的命令行工具,名字叫SCP

使用方式如下:

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

  1. scp /path/filename username@servername:/path/ 

例如scp /var/www/test.php root@192.168.0.101:/var/www/ 把本机/var/www/目录下的test.php文件上传到192.168.0.101这台服务器上的/var/www/目录中

2、从服务器上下载文件

下载文件我们经常使用wget,但是如果没有http服务,如何从服务器上下载文件呢?

  1. scp username@servername:/path/filename /var/www/local_dir(本地目录) 

例如scp root@192.168.0.101:/var/www/test.txt 把192.168.0.101上的/var/www/test.txt 的文件下载到/var/www/local_dir(本地目录)

3、从服务器下载整个目录

  1. scp -r username@servername:/var/www/remote_dir/(远程目录) /var/www/local_dir(本地目录) 

例如:scp -r root@192.168.0.101:/var/www/test /var/www/

4、上传目录到服务器

  1. scp -r local_dir username@servername:remote_dir 

例如:scp -r test root@192.168.0.101:/var/www/ 把当前目录下的test目录上传到服务器的/var/www/ 目录

【编辑推荐】

  1. Linux下screen命令使用及示例
  2. Linux:chattr命令和chgrp命令
  3. 汇总:Linux文件管理的50个命令
  4. Shell的18条常用命令整理
  5. 一次Linux服务器被入侵和删除木马程序的经历
【责任编辑:武晓燕 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

Linux编程技术详解

本书全面介绍了Linux编程相关的知识,内容涵盖Linux基本知识、如何建立Linux开发环境、Linux开发工具、Linux文件系统、文件I/O操作、设备文...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊
× Python最火的编程语言