As a software developer, I work daily many hours on the command line. This article summarizes some tools and tricks to speed up this work.
Bash, ZSH, Fish are Linux shells.
Oh-my-ZSH is a plugin for ZSH which is AWESOME!
cd: Change directory, e.g.
pwd: Print the working directory
ls: List the contents of the current directory
man: show manual / help page
history: Show the last commands executed in the shell
mv filename.ext newname.jpg: Rename a file
grep: Pattern search
cat filename: print the contents of
filenameto the output
watch: run any designated command at regular intervals
free: Memory consumption
htop: display Linux processes
tree: Print a directory tree
cloc: count lines of code
wc: word count (or lines or characters)
tmux- terminal multiplexer
ping martin-thoma.com: Check if you can reach a domain
ssh 188.8.131.52: Connect to the IP
screen: Create a new terminal session that can be detached / re-attached
ifconfig- configure a network interface
alias pbcopy='xclip -selection clipboard' alias pbpaste='xclip -selection clipboard -o'
There are various commands with the "bang"
!!: Execute the last executed command in the bash history
!*: Execute the command with all the arguments passed to the previous command
!ˆ: Get the first argument of the last executed command in the bash history
!$: Get the last argument of the last executed command in the bash history
cd - jumps back to the directory in which you were before:
/home/moose$ cd foobar /home/moose/foobar$ cd - /home/moose$
git checkout - jumps back to the branch in which you were before.
.dotfiles git repository
Dotfiles a files which start with a
.. Those files are hidden in Linux and
often contain configuration files. Here is mine.
ncdu: Find what is eating your disk space and delete it on the fly.
httpie: Command line HTTP client
jq: JSON query tool
ranger: console file manager