Você pode fazer:
sudo !!
Outra boa é alt .
, para inserir o último parâmetro do comando anterior
Existe uma maneira fácil de reaplicar um comando anterior a uma nova entrada de linha de comando?
Digamos que eu digitei chmod u+r,g+x file.txt
, mas esqueci o sudo. Eu poderia simplesmente digitar sudo <some easy symbol>
'?
Pressione up
seta, pressione ctrl+a
, escreva sudo
, pressione enter
.
Existem alguns atalhos básicos do bash você deve saber ...
Ctrl + A Go to the beginning of the line you are currently typing on
Ctrl + E Go to the end of the line you are currently typing on
Ctrl + L Clears the Screen.
Ctrl + U Clears the line before the cursor position. If you are at the end of the line, clears the entire line.
Ctrl + H Same as backspace
Ctrl + R Let’s you search through previously used commands
Ctrl + D Exit the current shell
Ctrl + W Delete the word before the cursor
Ctrl + K Clear the line after the cursor
Ctrl + T Swap the last two characters before the cursor
Esc + T Swap the last two words before the cursor
Alt + F Move cursor forward one word on the current line
Alt + B Move cursor backward one word on the current line
Tab Auto-complete files and folder names
No seu caso específico, também alias h
to history|grep
.
Tal que:
# mco service sendmail status -F operatingsystemmajrelease=6
E eu preciso adicionar algo para isso ...
# h mco
Que mostra ...
114 07-28-2014 09:33:25 mco package sendmail install -F operatingsystemmajrelease=6
115 07-28-2014 09:33:25 mco service sendmail status -F operatingsystemmajrelease=6
116 07-28-2014 09:33:25 mco package sendmail-cf install -F operatingsystemmajrelease=6
E eu quero a linha # 116 ... Então eu digito:
# !115
Mas se eu precisar de algo na frente dele (por exemplo, sudo
), eu faria ...
# sudo !115