Odpowiedzi:
history -s dowództwo
./resize-images.shktórego ostatnia linia wskazuje polecenie, które należy uruchomić, aby cofnąć zmiany, byłoby naprawdę przydatne, gdyby zamiast tego skrypt mógł dodać polecenie do mojej historii, więc po prostu uderzyłem, up-entergdybym musiał cofnąć
history -s dowództwo
Możesz nawet przypisać naciśnięcie klawisza, aby zrobić to za Ciebie. Możesz wprowadzić to po wyświetleniu monitu Bash:
bind '"\C-q": "\C-a history -s \C-j"'
lub dodaj to do ~/.inputrc:
"\C-q": "\C-a history -s \C-j"
następnie możesz coś wpisać i nacisnąć Ctrl- qa zostanie on dodany do historii bez wykonania. Spacja przed „historią” powoduje, że historysama komenda nie jest dodawana do historii, jeśli HISTCONTROLzmienna zawiera ignorespacelub ignoreboth. Zamiast „\ Cq” można wybrać kolejne naciśnięcie klawisza.
Trudno wymyślić coś krótszego niż „polecenie” jednej postaci, więc naprawdę musimy przejść na poziom naciśnięcia klawisza. Z moją konfiguracją bash i klawiaturą amerykańską to, co teraz robisz:
#(potrzebuje SHIFT): instrukcja +1, naciśnięcie klawisza +2więc łącznie 3 instrukcje, 5 naciśnięć klawiszy.
Używanie ALT#robi to samo w 1 instrukcji, 2 naciśnięciach klawiszy.
YMMV w zależności od układu klawiatury i konfiguracji bash.
#commandjest znacznie szybsze niż history -s command, a także bardzo łatwe w użyciu, jeśli history-search-backward/-forwardpoprawnie mapujesz. Ale to kwestia gustu.