環境:Ubuntu 16.04 研究原因:https://www.cnblogs.com/sjsea/p/13126996.html 1.SCP # 上傳 scp /home/sea/Desktop/test.sh [email protected]:/home/sea/Desktop/test.sh ...
環境:Ubuntu 16.04
研究原因:https://www.cnblogs.com/sjsea/p/13126996.html
1.SCP
# 上傳 scp /home/sea/Desktop/test.sh sea@192.168.1.31:/home/sea/Desktop/test.sh # 下載 scp sea@192.168.1.31:/home/sea/Desktop/test.sh /home/sea/Desktop/test.sh
文件的內容並不會發生任何變化,只變化了修改時間。
2.FTP
ftp 192.168.1.31 # 下載 ftp> get /home/sea/Desktop/test.sh /home/sea/Desktop/test.sh # 上傳 ftp> put /home/sea/Desktop/test.sh /home/sea/Desktop/test.sh
下載的時候沒有問題,文件內容也沒有變化。
但是在上傳的時候報錯了:553 Could not create file。查了一下大概是操作許可權問題,我懶得去試了,盲猜沒有問題(不嚴謹的做法)。
3.SFTP
sftp [email protected]
# 下載 sftp> get /home/sea/Desktop/test.sh /home/sea/Desktop/test.sh # 上傳 sftp> put /home/sea/Desktop/test.sh /home/sea/Desktop/test.sh
結果就是不管是上傳還是下載,文件內容確實變沒了。
沒想到這麼快就找到了真凶,我還想測試paramiko和fabric的(雖然這兩個底層還是SFTP)。
4.paramiko 和 fabric
不測了,肯定是SFTP的原因。
總結:
比較了SCP、FTP、SFTP對自己進行文件的上傳和下載,SCP與FTP都沒什麼問題,就正常的對文件進行覆蓋,但是SFTP會將自己的文件內容變為空,不知道為什麼,希望有空研究一下。