4 ms·
sudo !! runs the previous line as root, in case you forgot to type sudo
by chopsueyar 16y ago
sudo !!
runs the previous line as root, in case you forgot to type sudo
- jrockway 16y agoMore like "sudo !!" prepends sudo to the last history entry and executes the result. It may not run as root, depending on the complexity of the shell handiwork you did, and depending on /etc/sudoers. I really, really, really hope that the author doesn't think "sudo !!" is some special kind of magic, and that he knows "echo !!" works the same way. Also, there are keyboards with a "Home" key? Most people just press C-a.
- joevandyk 16y agoI'd hope that most people just hit "<esc> I sudo !!<CR>".
- chopsueyar 16y agoYou said Esc-0, first.
- chopsueyar 16y agoYeah, I first tried... grep ".jpg" ^C ls | !! ...that worked too. Cool command to learn. Thanks for the clarification, though. Original article was lacking.
- hardik988 16y agoHi, I'm the author (admittedly still quite new to Unix). I did play around with the !! and realized it does a lot more. Thanks for clarifying though! Edit: Typos
- humblest_ever 16y agoIt's very powerful. There's more than just the !! for history, also. Check out http://www.catonmat.net/blog/the-definitive-guide-to-bash-command-line-history/ http://www.catonmat.net/blog/the-definitive-guide-to-bash-co... .
- xenophanes 16y agoDo you know where I can find a list of hotkeys along the lines of C-a? I personally created my own hotkey (shift left arrow) but learning standard ones would probably be good.
- jrockway 16y agoIf you use bash, read the "Command Line Editing" section of "info readline".
- telemachos 16y agoYou can also tweak the behavior of readline (for Bash and other applications) and custom make your own key combinations by editing your ~/.inputrc file. A random example from mine: # Insert double quotes & set cursor between them "\C-x\"": "\"\"\eb" # # Insert single quotes & set cursor between them "\C-x'": "''\eb" See also the Bash manual: http://www.gnu.org/software/bash/manual/bashref.html#Command-Line-Editing http://www.gnu.org/software/bash/manual/bashref.html#Command...
- pyre 16y agoMost shells default to emacs keybindings: C-a beginning of line C-k kill text from cursor to end of line C-e end of line M-b move cursor backwards by a word M-f move cursor forwards by a word C-w delete backwards by a word C-h backspace (great when real backspace doesn't work) C-r reverse search through command history (C-w works in Vim(insert mode) and Emacs, but kills me when I try to type it in a browser window to delete a word... Good-bye window and/or tab) In zsh I actually have M-w bound to the normal backspace-by-a-word and C-w bound to the vim version which will do things like count '/' as a word separator so that I can easily backspace through sections of a path rather than be required to delete the whole thing (or nothing).
- xenophanes 16y agoHmm, FYI most of those work in the safari reply box. I think Apple put them for all Cocoa text fields not just terminal :-)