Hogyan tudsz gyorsabban navigálni a hosszú parancsokat?

123

Van-e mód a Linux CLI navigáció felgyorsítására, ha hosszú parancsokat kell beírnom? Most egyszerűen nyilakat használok, és - ha hosszú parancsom van, akkor időbe telik, hogy a parancs elejétől a közepéig tartson.

Van-e mód például arra, hogy ugorjon a parancs közepére a nyilak használata nélkül?

    
készlet Stann 27.05.2011 17:17
forrás

5 válasz

153

A Olvasólista könyvtár által biztosított néhány hasznos vonalszerkesztési kulcscsatlakozás:

  • Ctrl-A: ugrás a sor elejére
  • Ctrl-E: ugrás a sor végére
  • Alt-B: kihagy egy szót hátra
  • Alt-F: kihagy egy szót előre
  • Ctrl-U: törölje a sor elejére
  • Ctrl-K: törlés a sor végére
  • Alt-D: törölje a szó végére
válasz adott Adam Byrtek 27.05.2011 19:49
forrás
65

Néhány gyorsbetű a itt

Ctrl + a – go to the start of the command line
Ctrl + e – go to the end of the command line
Ctrl + k – delete from cursor to the end of the command line
Ctrl + u – delete from cursor to the start of the command line
Ctrl + w – delete from cursor to start of word (i.e. delete backwards one word)
Ctrl + y – paste word or text that was cut using one of the deletion shortcuts (such as the one above) after the cursor
Ctrl + xx – move between start of command line and current cursor position (and back again)
Alt + b – move backward one word (or go to start of word the cursor is currently on)
Alt + f – move forward one word (or go to end of word the cursor is currently on)
Alt + d – delete to end of word starting at cursor (whole word if cursor is at the beginning of word)
Alt + c – capitalize to end of word starting at cursor (whole word if cursor is at the beginning of word)
Alt + u – make uppercase from cursor to end of word
Alt + l – make lowercase from cursor to end of word
Alt + t – swap current word with previous
Ctrl + f – move forward one character
Ctrl + b – move backward one character
Ctrl + d – delete character under the cursor
Ctrl + h – delete character before the cursor
Ctrl + t – swap character under cursor with the previous one
    
válasz adott karlacio 09.06.2011 00:43
forrás
14

Ha Ön vi [m] és bash felhasználó, hasznosnak tartja, hogy a readline (a bash használata) vi-style szerkesztést használjon aset editing-mode vi~/.inputrc vagy/etc/inputrc fájlok hozzáadásával. Vagy csak a bash használatát vi-style szerkesztéssel futtathatja a bash parancsset -o vi parancsával. Adja hozzá a parancsot~/.bashrc fájlához, hogy a viselkedés tartós legyen.

Ha zsh felhasználó vagy, vigye bebindkey -v -ta.zshrc fájlját a vi-style szerkesztéshez.

    
válasz adott Smith John 14.10.2012 14:58
forrás
8

Nem tudom, hogy a kurzor gombjainak használatával pontosan a közepére ugorhatsz. Azonban ajánlom a CTRL + kurzor billentyű használatával az üresről az üresre (vagyis az egyik szóról a másikra ugrás) történő áthelyezést.

    
válasz adott Kory Wnuk 27.05.2011 17:26
forrás
0

Forrás az alábbi kódrészletet a .bashrc-ben. A Ctrl-a ugrik az elejére, és a Ctrl-a ismételt megnyomása ismét középre ugrik.

jump_mid() {
    if [ "$READLINE_POINT" -eq "0" ]; then
        LEN=${#READLINE_LINE}
        POS=$(($LEN / 2))
        READLINE_POINT=$POS
    else
        READLINE_POINT=0
    fi
}
bind -x '"\C-a" : jump_mid'

Vagy ha a Ctrl-Something-t szeretnénk közvetlenül középre ugrani, akkor változtassuk meg a kódot:

jump_mid() {
    LEN=${#READLINE_LINE}
    POS=$(($LEN / 2))
    READLINE_POINT=$POS
}

És kössd be valami másra, mint a Ctrl-a.

    
válasz adott marukse 05.10.2017 14:00
forrás