FreeBSD पर एक टर्मिनल में ctrl + एरो की मार मारते समय 5 डी


18

सेंटो में मैं एक टर्मिनल में ctrl + एरो (बाएं या दाएं) मारकर एक शब्द को छोड़ सकता हूं। जब मैं एक FreeBSD बॉक्स में ssh करता हूं और मैं उसी पैटर्न की कोशिश करता हूं जो मुझे मिलता है:

$ tail -f 20120412.log;5D;5D;5D

(प्रत्येक कोशिश = 5 डी )

क्या इसे ठीक करने का कोई तरीका है? मैं Ubuntu 12.04 + टर्मिनेटर का उपयोग कर रहा हूं।

अग्रिम में धन्यवाद।

जवाबों:


26

एक .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

1
स्पष्ट करने के लिए - यह .inputrcरिमोट मशीन पर सेट किया जाना चाहिए।
omikron

मेरे लिए काम किया, केवल हालांकि byobu को फिर से शुरू करने के बाद।
immeëmosol

1
किसी को भी है कि पूरी तरह से उनके याद आ रही है के लिए .inputrcमेरे लिए, प्रासंगिक लाइनों थे: "\e[1;5C": forward-word, "\e[1;5D": backward-word, "\e[5C": forward-word, "\e[5D": backward-word, "\e\e[C": forward-word,"\e\e[D": backward-word
AlbinoDrought

2

जब तक आपने इन्हें डिफ़ॉल्ट रूप से नहीं बदला है, तब तक शेल जो आप Ubuntu पर उपयोग कर रहे हैं वह बैश है। FreeBSD पर, डिफ़ॉल्ट शेल csh है। आप दोनों OS में निम्न कमांड के साथ अपना शेल बदल सकते हैं:

chsh

अपने शेल को FreeBSD में / usr / लोकल / बिन / बैश में सेट करें। बैश FreeBSD का हिस्सा नहीं है, इसलिए यदि आप पहले से ही नहीं है, तो इसे बंदरगाहों से स्थापित करें:

cd /usr/ports/shells/bash
make install
make clean

एक आखिरी बात: शेल को रूट के लिए न बदलें। यह "टॉर" खाता है: रूट के सभी विशेषाधिकारों के लिए, लेकिन आप जो चाहें खोल सकते हैं। इसका कारण यह है कि टॉर के तहत चलने वाली कोई भी सिस्टम गतिविधियाँ नहीं हैं, इसलिए आप किसी भी चीज़ को नहीं तोड़ेंगे या किसी को उस खाते के शेल को उस चीज़ में बदलकर भ्रमित नहीं करेंगे जिसका उपयोग आप कर रहे हैं (या लॉगिन शेल के रूप में अधिक कार्यात्मक हो सकता है)।


1

FreeBSD मशीन पर आपके द्वारा चलाए जा रहे शेल संभवतः उस नियंत्रण अनुक्रम का समर्थन नहीं करते हैं। यह जानने के बिना कि आप किस खोल पर चल रहे हैं, हालांकि, यह सुनिश्चित करने के लिए कहना मुश्किल है।


1

यदि आप 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

0

ऐसा लगता है कि आपके पास गलत $ TERM सेटिंग हो सकती है। echo $TERMयह जानने के लिए कि आपकी वर्तमान सेटिंग क्या है। शायद xterm का उपयोग करना चाहते हैं export TERM=xterm-256color


अभी भी कोई प्यार नहीं = |
jdorfman
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.