Linux下使用SSH命令行傳輸文件到遠程服務(wù)器
以前一直在windows下用SSH Secure Shell連接遠程服務(wù)器,它自帶了一個可視化的文件傳輸工具,跟ftp差不多
但是它也存在一個缺陷,不支持編碼的選擇,遇到utf8就自動亂碼了,另外mac下也沒有這個工具
在mac下我用終端登錄上去之后,想傳個文件上去就犯愁了,難不成要開個ftp?
搜了一下,果然有直接的命令行工具,名字叫SCP
使用方式如下:
1、上傳本地文件到服務(wù)器
- 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這臺服務(wù)器上的/var/www/目錄中
2、從服務(wù)器上下載文件
下載文件我們經(jīng)常使用wget,但是如果沒有http服務(wù),如何從服務(wù)器上下載文件呢?
- 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、從服務(wù)器下載整個目錄
- 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、上傳目錄到服務(wù)器
- scp -r local_dir username@servername:remote_dir
例如:scp -r test root@192.168.0.101:/var/www/ 把當前目錄下的test目錄上傳到服務(wù)器的/var/www/ 目錄