How often have you typed in a command in your linux shell, and then realized that you forgot to type sudo, so you end up with an error or editing the dreaded read-only file? This happens to me much more than I’d like to admit, so I’m writing about it.

You have a couple of options, the easiest one is to just use !! to tell bash to use the last command.

For instance, if you tried to type this, you’d get an error that you are editing a read-only file:

vi /etc/apt/sources.list

Once that happens, then you can just use this command:

sudo !!

Which bash will then expand into this command:

sudo vi /etc/apt/sources.list

Screenshot of this in action:

An alternative method would be to just hit the up arrow key, hit either the Home key or Ctrl+A, and then type sudo.

Profile Photo for Lowell Heddings Lowell Heddings
Lowell is the founder and CEO of How-To Geek. He’s been running the show since creating the site back in 2006. Over the last decade, Lowell has personally written more than 1000 articles which have been viewed by over 250 million people. Prior to starting How-To Geek, Lowell spent 15 years working in IT doing consulting, cybersecurity, database management, and programming work.
Read Full Bio »