Jak wyczyścić wpisane w monit?

15

Wpisuję naprawdę, bardzo długie polecenie w bash. Ups, to było złe polecenie.
Na razie oznacza to, że przechodzę przez dwa piekła:

  1. Uświadomienie sobie, że moje polecenie było bezużyteczne.
  2. Muszę wyczyścić moją skorupę, przytrzymując ją, Backspacedopóki komunikat nie zniknie.

Czy jest szybszy sposób?

digitxp
źródło

Odpowiedzi:

14

Control + Apotem Control + K. Pierwszy przesuwa kursor na początek linii, drugi usuwa linię za kursorem.

Bardziej niebezpiecznym sposobem na to jest wciśnięcie Enter, a następnie wciśnięcie Control + C. Kredyt na @ billc.cn

Jeśli chcesz wyczyścić cały monit, użyj Control + L.

soandos
źródło
6
Ctrl + C jest szybszy w niektórych przypadkach, chociaż dość brzydki: P
billc.cn
1
Nie sądziłem, że to ma znaczenie. Myślałem, że chce wyczyścić linię, a nie zabić działającego programu.
soandos
1
Po prostu wpisz coś do bashi naciśnij Ctrl-C i zobacz, co dostajesz.
billc.cn
2
Ctrl-L czyści ekran, ale zachowuje to, co wpisałeś.
Alger,
3
Czyni to przeciwieństwo tego, czego chce.
soandos,
18

Ctrl-U usuwa wpisane polecenie, aż do bieżącej pozycji kursora. Jeśli więc używasz go zaraz po wpisaniu polecenia, ale nie cofniesz kursora do tyłu, wyczyści wszystko, co wpisałeś.

Alger
źródło
1
W rzeczywistości „Czyści linię przed pozycją kursora. Jeśli jesteś na końcu linii, usuwa całą linię”. Co jest bliskie, ale nie do końca dokładne. Jest to przeciwieństwo Ctrl + K
soandos
Słuszna uwaga. Jednak w sytuacji przedstawionej w pytaniu kursor prawdopodobnie znajduje się na końcu linii, więc powinien działać w tym celu. Naprawiłem odpowiedź, aby to wyjaśnić.
Alger,
Stąd moja opinia.
soandos,
@Alger dla mnie zawsze usuwa wszystko bez względu na to, gdzie kursor jest przesunięty do tyłu, czy nie. echo $0 zwraca /bin/csh.
Geek
+1, ponieważ działa to zarówno w powłoce mysql, jak i powłoce bash: D
wim