Używam terminala do prawie wszystkich zadań. Powiedzmy, że wprowadziłem takie wielkie polecenie:
sudo a-huge-command
Jaki jest najprostszy sposób, aby usunąć całe polecenie za pomocą jednego skrótu, zamiast backspacenaciskać klawisz?
Jestem nowicjuszem Ubuntu, który chce profesjonalnie używać Ubuntu.
command-line
shortcut-keys
ordynans
źródło
źródło
bash
(i kilka innych muszle), aby zrozumieć klucze VIset -o vi
. Następnie można zrobićesc
,dd
(lub w inny sposób edytować / wymienić można zrobić w vi [m]).ls
), a następnie cofnij - to zwykle tylko kilka klawiszy, więc nie jest tak duży ' rozdać.Odpowiedzi:
Użyj Ctrl+, Uaby wyciąć tekst z pozycji kursora na początek wiersza polecenia. Później, jeśli chcesz, użyj Ctrl+, Yaby wkleić wycięty tekst.
Jeśli chcesz po prostu odrzucić bieżący wiersz poleceń i uzyskać nowy czysty monit, naciśnij Ctrl+ C.
Aby uzyskać więcej informacji, zapoznaj się z dokumentacją Ubuntu dotyczącą korzystania z terminala
źródło
dash
jest domyślnym interpreterem/bin/sh
poleceń.bash
jest domyślną powłoką logowania i TTY.Ctrl + C
zły nawyk, ponieważ często przypadkowo wysyłam sygnały do programów z ich własną prośbą, zabijając je i tracąc postępy i / lub pęd.Ctrl+ Upowinien ci pomóc.
Poniżej znajdują się pozostałe dostępne opcje. Złapałem stąd
UNIX rozumie kilka poleceń klawisza sterującego, które wprowadzasz przytrzymując klawisz kontrolny (ctrl) podczas naciskania drugiego klawisza
CTRL+ S- zawiesza ekran i zatrzymuje kontynuowanie wyświetlania na ekranie (odpowiednik klawisza bez przewijania) (czasami praca trwa chwilę)
CTRL+ Q- odblokowuje ekran i pozwala kontynuować wyświetlanie ekranu
CTRL+ C- przerywa działający program
CTRL+ \- taki sam jak CTRL - C, ale silniejszy (używany, gdy terminal nie odpowiada)
CTRL+ Z- zawiesza uruchomiony program (użyj komendy fg, aby kontynuować program, patrz s $
CTRL+ H- usuwa ostatni wpisany znak
CTRL+ W- usuwa ostatnie wpisane słowo
CTRL+ U- usuwa ostatni wpisany wiersz
CTRL+ R- wyszukuje tekst z historii
CTRL+ D- kończy wprowadzanie tekstu dla wielu programów UNIX, w tym poczty i pisania.
Uwaga:
Kiedy usuwamy za pomocą CTRL+ Wlub CTRL+ U, wykonujemy również (edytuj) operację „cut” (szarpnięcie w) (usuwanie i przechowywanie w buforze / schowku). Aby wkleić (wyciągnąć) ciąg do bufora / schowka, użyj CTRL+ Y.
źródło
Zwykle używam Alt+ Backspace. Jeśli używasz
bash
, to pozwala usunąć aż poprzedni znak specjalny (/
,;
,, itd.). Jeśli używasz
zsh
, spowoduje to również usunięcie ukośników i średników. Jest o wiele szybszy niż zwykłe uderzenie Backspace.W
bash
różni się to od Ctrl+ ww tym sensie, że Ctrl+ wusuwa poprzednie słowo gdzieś Alt+ Backspaceusuwa, dopóki nie zostanie znaleziony poprzedni znak specjalny. Wzsh
obie kombinacje klawiszy zrobić to samoźródło
set -o emacs
jest ustawiony.ALT+Backspace
równieżCTRL+C
. Działa to na każdym systemie Linux. :)/
,;
, ``, etc).Oto lista skrótów klawiaturowych, których można używać z
bash
powłoką.To, co chcesz zrobić, można osiągnąć za pomocą znaku Ctrl+ Club Ctrl+ Una końcu wiersza.
źródło
Ctrl+C
lub (Ctrl+E
Ctrl+U
)man tcsh
lub użyjbindkey -l
. Wygląda na to, że jest zupełnie inaczej.Alt+ #(tj. Alt+ Shift+ 3) skomentuje bieżące polecenie i przejdzie do następnego wiersza.
Na przykład, jeśli wpiszesz t, e, s, t, Alt+ #, otrzymasz:
Jeśli chcesz dostać z powrotem swoje stare polecenia, można nacisnąć strzałkę w górę i usunąć znak hash ( Up, Home, Deletelub Up, Ctrl+ A, Delete).
Myślę, że jest to cecha GNU Readline , ponieważ działa w Bash, Python i MySQL.
źródło
Ctrl+ C- oprócz przerywania uruchomionych poleceń, może być również używany do „przerywania” wprowadzania danych z wiersza poleceń.
W przeciwieństwie do Ctrl+ U, nadal zobaczysz, co wpisałeś, ale kursor przeskoczy do nowej linii i pojawi się pusty wiersz polecenia.
źródło
readline
Skrót Bash Ctrl+ X+ Ejest bardzo przydatny podczas pracy z wierszem poleceń. Jeśli jesteś w trakcie wprowadzania długiego polecenia i zdecydujesz, że zamiast tego chcesz otworzyć go w domyślnym edytorze tekstów, wystarczy użyć skrótu.Korzysta z
readline
biblioteki Basha, a ten konkretny skrót nazywa sięedit-and-execute-command
. Możesz ustawić domyślnego edytora, umieszczającexport EDITOR="/usr/bin/vi"
w~/.bashrc
lub~/.bash_aliases
.Enter
bind -P
, aby zobaczyć aktualnereadline
powiązania i odnoszą się doman readline
lub manpages Ubuntu w Internecie , aby uzyskać więcej informacji.źródło
Używam również Esc+, Backspaceaby usunąć wszystkie poprzednie znaki, aż do znaku specjalnego. To samo jest Alt+ Backspace. Przydatne, jeśli usuwasz tylko kilka słów na raz.
źródło
Do
vi
kluczowych powiązańKiedy usin
vi
klucz mapa podoba siębash
zset -o vi
lubzsh
zbindkey -v
:Tryb wstawiania
Jest to takie samo naciśnięcie klawisza, jak w trybie domyślnym / emacs:
Ctrl+U
usuwanie z aktualnej pozycji na początek linii. Usuwa więc całą linię, jeśli kursor znajduje się na końcu.
Tryb normalny
Istnieje wiele sposobów usunięcia linii za pomocą dwóch naciśnięć klawiszy:
Usuń linię
dd
, z domyślną liczbą jednej linii:dd
który jest najprostszy pod względem dotkniętych klawiszy.
Innym sposobem jest: Przejdź do początku linii
^
i usuń do końca linii za pomocąD
:^D
Obie usuwają całą linię, nie tylko w lewo, jak Ctrl+ Uw trybie wstawiania lub wariant odkurzania.
Jeśli obecnie znajdujesz się na końcu linii, więc nie musisz usuwać niczego po prawej stronie, spowoduje to również:
Usuń stąd
d
, aby rozpocząć linię^
:d^
Możesz użyć ich wszystkich z trybu wstawiania, potrzebujesz zwykłej ucieczki, aby przejść do trybu normalnego. Na przykład, aby usunąć całą linię z trybu wstawiania, użyj:
Escdd
źródło