fuck() { sudo $(fc -ln -1) }
This function takes the last command and puts sudo in front of it. Actually used it in a zoom call at work without thinking and it took a second to realize why everyone was laughing. Not my invention–came across it years ago on stackoverflow or someplace and thought it was funny/useful.
kmirl@tux:~$ ls /root ls: cannot open directory '/root': Permission denied kmirl@tux:~$ fuck [sudo] password for kmirl: bin debs docs Mail
Isn’t this the same effect as just running ‘sudo !!’ ?
According to this super user question, someone said that
!!
won’t work in a function, so you must use thefc -ln -1
command in a subshell instead. Note the response that sayseval
shouldn’t be used (not sure why)Eval shouldn’t be used on userinput. Meaning that if smb other than you may use this to change the system he could put malicious code in the eval part.
Probably doesn’t matter on shell level
sudoedit
is more secure btw. Many editors are not built to be ran as root, and this copies the file to a temo directory, edits it without root, and then overwrites the original file on save with root.