alias v=vim
+# Ask for confirmation before overwriting files. Especially useful when moving
+# to a different directory. No alias for `rm` because I specify the files to
+# remove directly, so I know what will happen.
+alias mv='mv -i'
+# Additionally preserve all file attributes when copying, this includes
+# copying symbolic links as is without dereferencing them.
+alias cp='cp -i -a'
+
+
# Make sure there is no alias named ls as it causes problems with the
# following ls function on (at least) bash 4.0.35.
unalias ls 2> /dev/null
LS_ENV LS_PATH LS_COLOR -C -F "$@" 2>&1 | less
}
-# Helper function to list all files.
-la() {
- ls -a "$@"
-}
-# Helper function to list the files in list format with access rights, etc.
-ll() {
- ls -l "$@"
-}
-# Helper function to list all files in list format with access rights, etc.
-lal() {
- la -l "$@"
-}
+unalias ll la lal 2> /dev/null
+# List the files in list format with access rights, etc.
+alias ll='ls -l'
+# List all files.
+alias la='ls -a'
+# List all files in list format with access rights, etc.
+alias lal='ls -al'
# Make going up directories simple.
# Automatically use unified diffs.
alias diff='diff -u'
+# COLUMN is set to `| column -t` if it's available, empty otherwise.
+
# Display all files (-s), use human readable sizes (-h) and display the
# complete size (-c).
alias du='du -shc'
-# Use human readable sizes.
-alias df='df -h'
+# Use human readable sizes and format it nicely, thanks to climagic
+# (http://twitter.com/climagic/status/49623386762129408).
+alias df='df -hP COLUMN'
# Highlight matched strings. Doesn't work with a pager!
alias grep='grep --color=auto'