Bang bang commands
A must-know trick for Linux 🔫
Posted: August 9, 2023
Ever forget to issue sudo before a command? Then you might want to learn about bang (!) commands on Linux.
Here are three common examples of what you can do with bash bang.
Repeat last command
Repeat the last command in the shell’s history by using a double bang (!!). Useful if you forgot to issue sudo before a command.
$ dnf upgrade
Error: This command has to be run with superuser privileges.
$ sudo !!
sudo dnf upgrade
...
Repeat by string’s beginning
A bang (!) followed by the first character (or string) matching the command you want to run will repeat that command.
$ ls -A
dir dir1 file file1 .hello.txt
$ echo "another command"
another command
$ !ls
ls -A
dir dir1 file file1 .hello.txt
Repeat by matching a string
The !?<string> bang format does the same as the above, but <string> doesn’t have to be at the beginning of the command.
$ cat hello.txt
Hello world!
$ !?hello
cat hello.txt
Hello world!
And more
There are actually way more useful bang commands (!) you can use on Linux.
I recommend reading the Red Hat article about “bang bang commands” for a more detailed explanation.