Ubuntu在vi編輯錯誤上下左右變成abcd的解決辦法

Ubuntu使用vi編輯時按上下左右變成ABCD

,如果在Vi中按下了上下左右鍵卻出現了abcd等字符,這可能是因為您的終端設定有問題,導致Vi無法正確解析箭頭鍵。在vi編輯器中,上下左右鍵變成ABCD,可能是因為開啟了vi相容模式。你可以嘗試以下方法解決

Ubuntu在vi編輯時上下左右變成abcd的解決辦法-1

為了解決這個問題,您可以嘗試以下幾種方法:

  • 方法一:
    1. 在命令列中輸入sudo apt-get remove vim-common,卸載vim tiny版本。
    2. 輸入sudo apt-get install vim,安裝vim full版本。
  • 方法二:
    1. 在命令列中輸入sudo apt-get remove vim-common,卸載vim tiny版本。
    2. 開啟文件/etc/vim/vimrc.tiny,將"set compatible"改為"set nocompatible"。
    3. 儲存文件,並在命令列中輸入source vimrc.tiny
    4. 重啟電腦。

如果還有問題你也可以試試下面的幾種方法:

在Vi中按Esc鍵,再輸入:set nocompatible,回車後再按i進入編輯模式,看看是否可以正常使用上下左右鍵。

確認您的終端類型和Vi的相容性設定。在終端機中輸入echo $TERM,查看終端機類型,如果是xterm-256color或類似的類型,則可以嘗試在終端機中輸入export TERM=xterm,並重新啟動Vi。如果您使用的是macOS系統,則可以嘗試在終端機中輸入export TERM=xterm-256color。

確認您是否啟用了終端模擬器的應用程式鍵模式。在Vi中按下Esc鍵,然後輸入:set t_k1=^[[A t_k2=^[[B t_k3=^[[C t_k4=^[[D,這將為Vi啟用箭頭鍵。如果這個命令可以解決問題,您可以將它新增到您的bashrc檔案中,以便在每次啟動終端時自動啟用。

或者你可以重新安裝vim

安裝vim full版本由於Ubuntu預先安裝的是tiny版本,就會導致使用不便。所以我們要安裝vim的full版本。 先卸掉舊版的vi

sudo apt-get remove vim-common

安裝full版的vim:

sudo apt-get install vim

如果遇到「-bash: /usr/bin/vi: No such file or directory」錯誤

在Linux系統中,vi是一個常用的文字編輯器。如果你在終端機中遇到「/bin/sh: /usr/bin/vi: No such file or directory」錯誤,那麼可能是由於以下原因:

  1. vi編輯器未安裝:在某些Linux發行版中,vi編輯器可能未被預設安裝。你可以透過安裝vi軟體包來解決這個問題。
  2. 路徑不正確:可能是由於vi編輯器的路徑不正確,導致系統無法找到vi指令。
    為了解決這個問題,你可以嘗試以下方法:
    方法一:安裝vi編輯器
  3. 打開終端機(Terminal)。
  4. 執行以下命令更新軟體包清單(如果已經是最新則跳過此步驟):
    1. sudo apt update
  5. 安裝vi編輯器:
    1. sudo apt install vim
  6. 安裝完成後,重新開啟終端,嘗試再次使用vi指令。
    方法二:檢查vi指令的路徑
  7. 在終端機中執行以下命令,檢查vi命令的路徑是否存在:
    1. which vi

    如果輸出為空,則表示vi指令的路徑不存在。

  8. 如果vi指令的路徑不存在,你可以嘗試加入vi指令的路徑到你的PATH環境變數。打開終端,執行以下命令編輯你的shell設定檔(例如bashrc):
    1. nano ~/.bashrc
  9. 在開啟的文件中,新增以下行(如果已經存在則跳過此步驟):
    1. export PATH=$PATH:/usr/bin/
  10. 儲存並關閉檔案後,執行以下命令使設定生效:
    1. source ~/.bashrc
  11. 重新開啟終端,嘗試再次使用vi指令。
    透過上述方法,你應該能夠解決“/bin/sh: /usr/bin/vi: No such file or directory”錯誤,並且能夠正常使用vi編輯器。請注意,這些方法適用於基於Debian和Ubuntu的Linux發行版。如果你使用的是其他發行版,請相應地調整命令和設定檔。
3/5 - (2 votes)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *