Centosでは、ターミナルでCtrl +矢印(左または右)を押すことでWordをスキップできます。 FreeBSDのボックスにsshして、同じパターンを試すと、次のようになります。
$ tail -f 20120412.log;5D;5D;5D
(各試行= ; 5D)
これを修正する方法はありますか? Ubuntu 12.04 +ターミネーターを使用しています。
前もって感謝します。
ホームディレクトリの.inputrc
は ctrl+left Ubuntu(たとえば)での作業を停止します。
すべてを機能させるには、~/.inputrc
に次を追加します。
# Include system-wide inputrc, which is ignored by default when
# a user has their own .inputrc file.
$include /etc/inputrc
これらをデフォルトから変更していない限り、Ubuntuで使用しているシェルはbashです。 FreeBSDでは、デフォルトのシェルはcshです。両方のOSで次のコマンドを使用してシェルを変更できます。
chsh
FreeBSDのシェルを/ usr/local/bin/bashに設定します。 BashはFreeBSDの一部ではないため、まだインストールしていない場合は、ポートからインストールします。
cd /usr/ports/shells/bash
make install
make clean
最後に、シェルをルートに変更しないでください。これが「toor」アカウントの目的です。rootのすべての特権ですが、シェルを好きなように設定できます。その理由は、Toorの下で実行されるシステムアクティビティがないためです。そのため、そのアカウントのシェルを慣れ親しんだものに変更することで、何かを壊したり、誰かを混乱させたりすることはありません(またはログインシェルとして機能する可能性があります)。
FreeBSDマシンで実行しているシェルは、おそらくその制御シーケンスをサポートしていません。ただし、どちらのシェルで実行しているシェルなのかがわからないと、確かに言うのは困難です。
ZSHを使用する場合は、これを/ etc/zshrcファイルで使用します。
case "${TERM}" in
cons25*|linux) # plain BSD/Linux console
bindkey '\e[H' beginning-of-line # home
bindkey '\e[F' end-of-line # end
bindkey '\e[5~' delete-char # delete
bindkey '[D' emacs-backward-Word # esc left
bindkey '[C' emacs-forward-Word # esc right
;;
*rxvt*) # rxvt derivatives
bindkey '\e[3~' delete-char # delete
bindkey '\eOc' forward-Word # ctrl right
bindkey '\eOd' backward-Word # ctrl left
# workaround for screen + urxvt
bindkey '\e[7~' beginning-of-line # home
bindkey '\e[8~' end-of-line # end
bindkey '^[[1~' beginning-of-line # home
bindkey '^[[4~' end-of-line # end
;;
*xterm*) # xterm derivatives
bindkey '\e[H' beginning-of-line # home
bindkey '\e[F' end-of-line # end
bindkey '\e[3~' delete-char # delete
bindkey '\e[1;5C' forward-Word # ctrl right
bindkey '\e[1;5D' backward-Word # ctrl left
# workaround for screen + xterm
bindkey '\e[1~' beginning-of-line # home
bindkey '\e[4~' end-of-line # end
;;
screen)
bindkey '^[[1~' beginning-of-line # home
bindkey '^[[4~' end-of-line # end
bindkey '\e[3~' delete-char # delete
bindkey '\eOc' forward-Word # ctrl right
bindkey '\eOd' backward-Word # ctrl left
bindkey '^[[1;5C' forward-Word # ctrl right
bindkey '^[[1;5D' backward-Word # ctrl left
;;
esac
$ TERM設定が間違っている可能性があります。 echo $TERM
現在の設定を確認します。 xtermを使いたいかもしれませんexport TERM=xterm-256color
。