使用SSH命令列傳輸檔案到遠端伺服器
阿新 • • 發佈:2020-07-24
以前一直在windows下用SSH Secure Shell連線遠端伺服器,它自帶了一個視覺化的檔案傳輸工具,跟ftp差不多
但是它也存在一個缺陷,不支援編碼的選擇,遇到utf8就自動亂碼了,另外mac下也沒有這個工具
在mac下我用終端登入上去之後,想傳個檔案上去就犯愁了,難不成要開個ftp?
搜了一下,果然有直接的命令列工具,名字叫SCP
使用方式如下:
1、上傳本地檔案到伺服器
scp /path/filename username@servername:/path/
例如 scp /var/www/test.php [email protected]:/var/www/
把本機/var/www/目錄下的test.php檔案上傳到192.168.0.101這臺伺服器上的/var/www/目錄中
2、從伺服器上下載檔案
下載檔案我們經常使用wget,但是如果沒有http服務,如何從伺服器上下載檔案呢?
scp username@servername:/path/filename /var/www/local_dir(本地目錄)
例如 scp [email protected]:/var/www/test.txt /var/www/local_dir
把192.168.0.101上的/var/www/test.txt 的檔案下載到/var/www/local_dir(本地目錄)
3、從伺服器下載整個目錄
scp -r username@servername:/var/www/remote_dir/(遠端目錄) /var/www/local_dir(本地目錄)
例如: scp -r [email protected]:/var/www/test /var/www/
4、上傳目錄到伺服器
scp -r local_dir username@servername:remote_dir
例如:scp -r test [email protected]:/var/www/ 把當前目錄下的test目錄上傳到伺服器的/var/www/ 目錄