在iterm2 v3.0版本中有了個新的feature——Shell Integration,其中比較重要的功能就是可以取代傳統的“rz”、“sz”(即:向服務器上傳、下載文件)
具體的用法可以參見官網所示:
https://iterm2.com/documentation-shell-integration.html
下面列出一些特別要注意的四項內容(這四項內容是我踩過的坑)
注意項一:
curl -L https://iterm2.com/misc/install_shell_integration.sh | bash
在服務器和本機都要執行這條命令,或者是通過“Iterm2"->"Install Shell Integration"來執行這條命令,執行完畢之后,會發現無論是服務器、還是本機在“命令提示符”最前面有一個藍色的小三角塊(When shell integration is enabled, iTerm2 automatically adds a mark at each command prompt. Marks are indicated visually by a small blue triangle in the left margin.)
注意項二:
若服務器的ssh端口不是22的話,需要在Mac本地配置sshconfig,配置的文件名稱需要特別注意一下。
官網:https://gitlab.com/gnachman/iterm2/wikis/scp-not-connecting(可參考,但寫的不是很詳細)
配置本機(Mac)機器的sshconfig文件,切記一定要是這個文件!用官網所示的“~/.ssh/ssh_config”是不行的,親測。
~/.ssh/config
配置的內容,若想讓它具有通用性的話,可以直接寫(例如,我們的服務器端口是2222):
Host *
Port 2222
注意項三:
若服務器的hostname不是所連接的IP地址的話(注:可使用hostname -f命令來查詢),就需要在hosts文件中做好“hostname"和“ip"的對應關系,否則本機是無法識別出服務器的hostname的(其實,這個也是與辦公環境有關的)
/etc/hosts
注意項四:
上傳文件的時候,在拖拽文件的同時,需按住“Option”鍵