為什麼大多數 Shell 都不支持類似於 PuTTY 的『選中複製』和『右鍵粘貼』?

我覺得PuTTY的複製粘貼功能是我用過的最方便的複製粘貼方法。

但 Windows, Linux, Mac 的 Shell 沒有一個支持此種方法。

很多 Shell 工具 (比如 XShell) 默認亦不支持此種方法。

為什麼呢?


putty 模仿的是 X 標準,但進行了自己的修改,把中鍵修改為右鍵了。估計主要是為了考慮 Windows 平台下的適配性。

在 Linux 下標準的終端都是 「選中複製,中鍵粘貼」。你可以試試。

這是 X Window 層面的功能,所以應該兼容絕大多數應用(除了少數應用自己將中鍵與選中事件截取了,例如 Firefox,以及某些自作多情的 shell 我就不點名了,反正你用到的時候就明白了)。

至於你非要將中鍵改為右鍵,或許也是可以的,比方說在 X 裡面將中鍵與右鍵交換,只是會影響其他的應用。


先糾正一下:

  • 不是SHELL不支持「選中即複製」,應該說SSH客戶端不支持「選中即複製」;
  • 不是「Windows, Linux, Mac 的 Shell 沒有一個支持此種方法」,而是你沒有找到;

Linux下,我記得大部分終端默認是「選中即複製」(不確定,已經不太記得了)」;

在Windows下,你所說的PuTTY就默認是「選中即複製」;

在Mac下,系統自帶的終端工具好像不行,但Mac更強大的是iTerm2:


就這點破功能,誰說沒有的?

不過我個人還是比較習慣Ctrl + Shift + C和Ctrl + Shift + V


這是 X Window 的設計,所有 Linux 窗口應該都是支持的。

在 X Window 中,有兩個剪貼板:PRIMARY 和 CLIPBOARD 。用滑鼠中鍵的是 PRIMARY ,而通過菜單明確執行複製粘貼的是 CLIPBOARD 。滑鼠中鍵也可以是 Shift-Insert 。

參見:

  • http://lilydjwg.is-programmer.com/2013/11/24/clipboards-in-x-window.41800.html
  • http://en.wikipedia.org/wiki/X_Window_selection#Clipboard


xshell是「默認不開啟」,不是「不支持」啊。

之所以這樣設定默認值,應該是市場數據調查結果吧。拉黑幾行後,一不小心右擊,連續執行n條錯誤命令,還好不是rm命令,想想都怕。

還有securecrt是默認開啟的。


CMD也是可以開啟的我記得,有一個快速編輯的設置項。


xshell怎麼不支持了.好好看看設置.


因為大多數shell認為沒有滑鼠


沒用過 putty, 常用的是 KDE 自帶的 konsole ,的確有選中複製,粘貼用的是中鍵,需要自己打開設置。不過我覺得 Ctrl+Alt+V 也很方便。


Windows 8.1實測就是這樣,選中複製,右鍵粘貼。


PowerShell不就支持?


Windows 下的 ConEmu 就支持選中複製和右鍵粘貼。Windows 自帶的控制台開啟了快速編輯模式也支持右鍵粘貼,選中後右鍵複製


推薦閱讀:

如何用一個循環語句輸出九九乘法表?
計算機應屆生找工作前去實習真的很重要嗎?
C++無法取代C嗎?
如何看待C++前置聲明?

TAG:編程 | Linux | Shell編程開發 | PuTTY |