日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Mac OS 使用命令(scp/sftp)将本地文件上传到远程 Linux 服务器主机或者从远程主机下载文件到本地主机

發布時間:2023/12/15 linux 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Mac OS 使用命令(scp/sftp)将本地文件上传到远程 Linux 服务器主机或者从远程主机下载文件到本地主机 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、使用 scp 命令
    • (一)將本地的文件上傳(上載/復制)到遠程主機的指定目錄下
    • (二)將本地主機的目錄內容(含目錄本身)上傳到遠程主機指定的目錄下
      • 1.將本地主機桌面上的目錄 www 及其內容上傳至遠程主機的目錄 /root/test 下
      • 2.將本地主機桌面上的目錄 www 下的內容上傳至遠程主機的目錄 /root/test 下
    • (三)將遠程主機的文件下載(下傳/復制)到本地
    • (四)將遠程主機指定目錄下的內容全部下載到本地主機指定的目錄下
      • 1.將遠程主機目錄 test 整個下載到本地主機的目錄 www 下
      • 2.將遠程主機目錄 test 下的內容下載到本地主機的目錄 www 下
  • 二、使用 sftp 命令
    • (一)通過 sftp 連接遠程主機
      • 方法1:打開命令終端,直接輸入 sftp 命令語句
      • 方法2:打開命令終端后,通過配置窗口執行 sftp 命令
    • (二)將本地文件上傳到遠程主機的指定目錄下
    • (三)將本地指定目錄下的內容上傳到遠程主機指定目錄下
    • (四)將遠程主機的文件下載到本地主機指定的目錄下
    • (五)將遠程主機指定目錄下的內容全部下載到本地主機指定的目錄下
      • 1.將遠程主機的目錄 test 整個下載到本地主機的目錄 www 下
      • 2.將遠程主機指定目錄下的內容(不含目錄本身)下載到本地主機指定的目錄下
    • (六)退出 sftp 命令行
    • (七)<code>切記,必須記住,勿忘,深坑!!!</code>
    • (八)覆蓋問題
  • 三、使用 FTP 客戶端軟件

一、使用 scp 命令

(一)將本地的文件上傳(上載/復制)到遠程主機的指定目錄下

蘋果電腦經常需要上傳文件到遠程的 Linux 主機上,如下:

liaowenxiong@liaowenxiongdeMacBook-Air ~ % scp /Users/liaowenxiong/Desktop/insert.sql root@47.108.37.204:/root; root@47.108.37.204's password: insert.sql 100% 784 21.5KB/s 00:00 liaowenxiong@liaowenxiongdeMacBook-Air ~ %

本地 Linux 電腦將數據庫備份文件上傳到局域網內的 Linux 主機上,如下:

[root@htlwk0001host ~]# scp /home/website/backups/mysqlbackup.txt root@192.168.1.50:/home/website/backups

如果你希望上傳文件到遠程主機指定目錄下的同時還要修改文件的名稱,那么就需要指定遠程主機具體的文件路徑。
例如,你本地文件的路徑是 /Users/liaowenxiong/.ssh/id_rsa.pub,這是個公鑰文件,你希望將該文件上傳到遠程主機 /root/.ssh 目錄下,同時文件名改成為 authorized_keys,那么就需要指定這個目標文件具體的路徑。

liaowenxiong@liaowenxiongdeMacBook-Air ~ % scp /Users/liaowenxiong/.ssh/id_rsa.pub root@192.168.1.50:/root/.ssh/authorized_keys

說明:

  • /Users/liaowenxiong/Desktop/insert.sql、/home/website/backups/mysqlbackup.txt 這是本地文件路徑
  • root@47.108.37.204、root@192.168.1.50 這是登錄遠程主機的用戶名與遠程主機的IP地址
  • /root、/home/website/backups 這是遠程主機的目錄路徑
  • (二)將本地主機的目錄內容(含目錄本身)上傳到遠程主機指定的目錄下

    1.將本地主機桌面上的目錄 www 及其內容上傳至遠程主機的目錄 /root/test 下

    liaowenxiongdeMacBook-Air:~ liaowenxiong$ scp -r /Users/liaowenxiong/Desktop/www root@48.104.95.667:/root/test root@48.104.95.667's password: .DS_Store 100% 6148 162.6KB/s 00:00 tf_user_20210523.sql 100% 86KB 758.6KB/s 00:00 td_dictionary_20210523.sql 100% 15KB 432.6KB/s 00:00

    2.將本地主機桌面上的目錄 www 下的內容上傳至遠程主機的目錄 /root/test 下

    liaowenxiongdeMacBook-Air:~ liaowenxiong$ scp -r /Users/liaowenxiong/Desktop/www/* root@48.104.95.667:/root/test root@48.104.95.667's password: td_dictionary_20210523.sql 100% 15KB 173.1KB/s 00:00 tf_user_20210523.sql 100% 86KB 388.4KB/s 00:00

    說明:
    將本地目錄下的內容上傳至遠程主機指定目錄下,這里只能使用 .../www/*,不能使用 .../www/.,但是 sftp 則可以使用 .../www/.

    (三)將遠程主機的文件下載(下傳/復制)到本地

    [root@htlwk0001host ~]# scp www@210.14.146.123:/home/website/backups/mysqlbackup.txt /home/website/backups

    說明:

  • www 登錄遠程主機的用戶名
  • 210.14.146.123 遠程主機的 IP 地址
  • /home/website/backups/mysqlbackup.txt 這是遠程主機的文件路徑
  • /home/website/backups 這是本地主機的目錄路徑
  • 遠程主機上的文件 mysqlbackup.txt 會被 copy(也可以理解為 download) 一份到本地電腦的目錄 /home/website/backups 下
  • (四)將遠程主機指定目錄下的內容全部下載到本地主機指定的目錄下

    1.將遠程主機目錄 test 整個下載到本地主機的目錄 www 下

    liaowenxiongdeMacBook-Air:www liaowenxiong$ scp -r root@48.104.95.667:/root/test /Users/liaowenxiong/Desktop/www root@48.104.95.667's password: td_dictionary_20210523.sql 100% 15KB 284.5KB/s 00:00 tf_user_20210523.sql 100% 86KB 534.7KB/s 00:00

    說明:本例是將遠程主機目錄 test 及其內容一起 下載到本地主機目錄 www 下

    2.將遠程主機目錄 test 下的內容下載到本地主機的目錄 www 下

    liaowenxiongdeMacBook-Air:www liaowenxiong$ scp -r root@48.104.95.667:/root/test/* /Users/liaowenxiong/Desktop/www root@48.104.95.667's password: td_dictionary_20210523.sql 100% 15KB 240.6KB/s 00:00 tf_user_20210523.sql 100% 86KB 411.4KB/s 00:00 liaowenxiongdeMacBook-Air:www liaowenxiong$ pwd /Users/liaowenxiong/desktop/www liaowenxiongdeMacBook-Air:www liaowenxiong$ ls td_dictionary_20210523.sql tf_user_20210523.sql

    二、使用 sftp 命令

    (一)通過 sftp 連接遠程主機

    方法1:打開命令終端,直接輸入 sftp 命令語句

    liaowenxiongdeMacBook-Air:~ liaowenxiong$ sftp root@48.104.95.667 root@48.104.95.667's password: Connected to 48.104.95.667. sftp>

    方法2:打開命令終端后,通過配置窗口執行 sftp 命令

    請點擊查看如何使用配置窗口連接遠程服務器主機

    (二)將本地文件上傳到遠程主機的指定目錄下

    sftp 遠程連接成功之后,接著使用 sftp 的 put 命令來上傳本地文件

    sftp> put /Users/liaowenxiong/Desktop/insert.sql /root/ Uploading /Users/liaowenxiong/Desktop/insert.sql to /root/insert.sql /Users/liaowenxiong/Desktop/insert.sql 100% 784 25.0KB/s 00:00

    有關說明:

  • /Users/liaowenxiong/Desktop/insert.sql 這是要上傳的本地文件的絕對路徑,/root/ 是文件要上傳的遠程主機中的目標目錄,也是絕對路徑
  • 本地文件路徑與遠程主機的目標路徑之間需要有空格
  • sftp 命令語句不要以 ; 結尾,否則有問題
  • 遠程主機的目標路徑必須以正斜杠 / 結束,/root 這樣的寫法是錯誤的,特別要注意了!!!
  • (三)將本地指定目錄下的內容上傳到遠程主機指定目錄下

    將本地電腦目錄 /users/liaowenxiong/desktop/www/ 下的內容全部上傳到遠程主機的目錄 /root/test 下

    sftp> put -r /users/liaowenxiong/desktop/www/* /root/test/ Uploading /users/liaowenxiong/desktop/www/td_dictionary_20210523.sql to /root/test/td_dictionary_20210523.sql /users/liaowenxiong/desktop/www/td_dictionary_20210523.sql 100% 15KB 390.9KB/s 00:00 Uploading /users/liaowenxiong/desktop/www/tf_user_20210523.sql to /root/test/tf_user_20210523.sql /users/liaowenxiong/desktop/www/tf_user_20210523.sql 100% 86KB 412.6KB/s 00:00

    說明:

  • 上傳本地主機目錄下的內容,需要使用選項 -r;
  • 上傳本主機目錄下的內容,必須在目錄后面跟上 /. 或者 /*,如果你寫成這樣 /users/liaowenxiong/desktop/www 會報錯!
  • 特別注意!使用命令 sftp 無法將本地主機的指定目錄上傳至遠程主機上,只能上傳本地主機指定目錄中的內容
  • (四)將遠程主機的文件下載到本地主機指定的目錄下

    使用命令 get 將遠程主機上的文件 /root/qydpw.sql 下載到本地主機的目錄 /users/liaowenxiong/desktop 下

    sftp> get /root/qydpw.sql /users/liaowenxiong/desktop Fetching /root/qydpw.sql to /users/liaowenxiong/desktop/qydpw.sql /root/qydpw.sql 100% 698KB 638.6KB/s 00:01 sftp>

    (五)將遠程主機指定目錄下的內容全部下載到本地主機指定的目錄下

    1.將遠程主機的目錄 test 整個下載到本地主機的目錄 www 下

    sftp> get -r /root/test /users/liaowenxiong/desktop/www Fetching /root/test/ to /users/liaowenxiong/desktop/www/test Retrieving /root/test /root/test/tf_user_20210523.sql 100% 86KB 464.0KB/s 00:00 /root/test/td_dictionary_20210523.sql

    說明:這樣是將整個目錄及其包含的內容下載到本地指定的目錄下,上述例子中,打開本地目錄 www,會看到下載下來的目錄 test

    2.將遠程主機指定目錄下的內容(不含目錄本身)下載到本地主機指定的目錄下

    sftp> get -r /root/test/* /users/liaowenxiong/desktop/www Fetching /root/test/td_dictionary_20210523.sql to /users/liaowenxiong/desktop/www/td_dictionary_20210523.sql /root/test/td_dictionary_20210523.sql 100% 15KB 147.6KB/s 00:00 Fetching /root/test/tf_user_20210523.sql to /users/liaowenxiong/desktop/www/tf_user_20210523.sql /root/test/tf_user_20210523.sql 100% 86KB 402.4KB/s 00:00

    說明:上述例子中,是把遠程主機目錄 test 下的內容全部下載到本地主機目錄 www 下,并不包含目錄 test 本身,下載下來的是目錄 test 下的內容,也可以使用 . 代表目錄 test 下的內容,例如,/root/test/.

    (六)退出 sftp 命令行

    exit 或者 quit,

    (七)切記,必須記住,勿忘,深坑!!!

    sftp 命令切記不要以 ; 結尾,我經常習慣以 ; 結尾,導致命令執行失敗,總是沒有反應過來,我擦!!!

    (八)覆蓋問題

    如果被下載文件所在目錄與本地目錄如果是同個目錄,執行下載指令后,被下載的文件的內容會被清空,如下所示,文件 text2.txt 的內容會被刪除掉:

    sftp> get /root/test/text2.txt /root/test Fetching /root/test/text2.txt to text2.txt /root/test/text2.txt 0% 0 0.0KB/s --:-- ETA

    本地目錄存在相同的文件 text2.txt,sftp 就會刪除該文件的內容,但是會保留文件名以及相關屬性信息,而被下載的文件也是這個文件,說明被下載的文件的內容被刪除了,也就是說文件名(text2.txt)所引用的內容其實是空的,所以執行完之后的結果就是被下載的文件的內容被刪除了,然后文件名保留,刷新下文件的 atime,mtime。

    擴展:所以這個結果就可以得知,Linux 中的 sftp 是怎么覆蓋同名文件的了,覆蓋的時候其實本地的文件名及屬性信息沒有被一并刪除,只是內容部分(block)被刪除了,然后把遠程主機的同名文件的內容存放進去,所以覆蓋的是文件的內容。

    三、使用 FTP 客戶端軟件

    推薦使用 VanDyke Software, Inc.(中文譯為:范戴克軟件公司)研發生產的支持普通FTP標準和安全數據傳輸標準(SFTP 或者 在SSH2 上的FTP)的FTP客戶端軟件:SecureFX

    點擊查看 SecureFX 介紹

    SecureFX 官方下載地址

    點擊查看 SecureFX 使用教程

    總結

    以上是生活随笔為你收集整理的Mac OS 使用命令(scp/sftp)将本地文件上传到远程 Linux 服务器主机或者从远程主机下载文件到本地主机的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。