一般在進行編程作業的時候,我們會采用“開發在Windows中編輯源代碼,在linux中編譯、執行源代碼。這往往需要需要將在Windows下編輯好的源代碼上傳到linux系統種進行編譯。怎么來進行上傳呢?其實可以有3種方法,下面一一為大家講解:
一、通過VMWare的共享文件夾實現:
- 先在Windows中創建一個文件夾,注意要使用英文名稱,例如"shared_folders"。
- 然后在VMWare中,依次點擊菜單欄 VM -> Settings -> Options -> Shared Folders選項卡,右邊上側選擇Always Enabled,下面點擊Add,next,在打開的選項卡中Host Path項目中瀏覽選擇剛才第一步中創建的文件夾"shared_folders",下面Name中會自動彈出一個相同的名字,這個名字是將來Windows中的文件夾在linux虛擬機中的映射文件夾,名字可以改也可以不改。然后一直OK,完成即可。
- 在linux中,直接到 /mnt/hgfs目錄下,即可找到剛才第二步中Name相同的名字的文件夾,這個目錄即是第一步中Windows中目錄在linux下的映射。
- 我共享文件夾設置后/mnt/hgfs下還是空的不能用怎么辦?
答:共享文件夾設置后沒東西一般都是軟硬件兼容性問題(你的windows系統和電腦主板和VMWare版本和ubuntu版本等有哪里不兼容),依次嘗試用下面三種方法解決:
(1) 重啟看是否能解決
(2) 重裝vmtools看是否能解決,方法網上百度。
(3) 如果實在不行,改用samba服務器替代即可。
二、通過Filezila軟件實現:
- 首先登錄Filezila官網,選擇適合自己操作系統的Filezila客戶端軟件。
- 安裝好軟件后打開,在頁面依次填寫遠程端服務器(虛擬機下ubuntu)的IP地址、用戶名、密碼和端口號。
- IP地址可在ubuntu終端環境下輸入命令
ifconfig | grep inet
得到,enss代表你電腦的物理網卡,我們一般使用這個地址,127.0.0.1代表的是回環地址,一般我們通過ping 127.0.0.1
來檢查網卡的有效性。 - 一般來說,服務器的不同的監聽端口連接到不同的應用服務,如果服務器沒有特別指定,行業內默認22號端口連接到SSH服務器sshd,21號連接到tp服務器vsftpd。如果為了傳輸文件,我們就選擇21號端口的ftp服務。
- 填好以上各要素后,點擊快速連接,就可以連接到遠端服務器主機了。通過直接拖拽即可達到文件相互傳輸的目的。
三、通過scp命令實現:
- 在ubuntu環境下安裝SSH服務器和客戶端。
sudo apt-get install sshd
或者是
sudo apt-get install openssh-server
- 檢查ssh服務
輸入命令:sudo service sshd status
-
如果出現
Loaded: error (Reason: No such file or directory)
提示的話,說明沒有安裝ssh服務,按照第1步:安裝ssh服務。 -
如果出現
Active: inactive (dead)
說明已經安裝了ssh服務,但是沒有開啟。
- 打開ssh服務
輸入命令:sudo service sshd start
開啟ssh服務。執行完命令后,再次查看ssh服務狀態的命令,如果出現類似以下提示:
Active: active (running) since Sun 2013-04-07 13:43:11 CST; 15s ago
說明你的ssh服務已經啟動了。如果失敗的話,那試着卸載一下再安裝。
4.傳送文件到windows系統下桌面
首先利用終端工具,進入到windows的桌面目錄
然后鍵入命令:scp -P 22 python@172.16.140.138:Desktop/01.py ./
最后,需要你輸入遠程端主機python用戶的登錄密碼,回車后就可以了。
5.傳送文件到遠程端主機
通后鍵入命令:scp -P 22 01.py python@172.16.140.138:Desktop
就可以達到目的