85 lines
1.6 KiB
Bash
85 lines
1.6 KiB
Bash
# Lists the ten most used commands.
|
|
function history-stat() {
|
|
history | awk '{print $2}' | sort | uniq -c | sort -n -r | head
|
|
}
|
|
|
|
# Makes a directory and changes to it.
|
|
function mkdcd() {
|
|
mkdir -p "$@"
|
|
cd "$argv[-1]"
|
|
}
|
|
compdef _mkdir mkdcd
|
|
|
|
# Changes to a directory and lists its contents.
|
|
function cdll() {
|
|
builtin cd "$@"
|
|
ll
|
|
}
|
|
compdef _cd cdll
|
|
|
|
# Pushes an entry onto the directory stack and lists its contents.
|
|
function pushdll() {
|
|
builtin pushd "$@"
|
|
ll
|
|
}
|
|
compdef _cd pushdll
|
|
|
|
# Pops an entry off the directory stack and lists its contents.
|
|
function popdll() {
|
|
builtin popd "$@"
|
|
ll
|
|
}
|
|
compdef _cd popdll
|
|
|
|
# Gets ownership.
|
|
function gown() {
|
|
sudo chown -R "${USER}" "${1:-.}"
|
|
}
|
|
|
|
# Reloads ~/.zshrc.
|
|
function reload() {
|
|
local zshrc="$HOME/.zshrc"
|
|
if [[ -n "$1" ]]; then
|
|
zshrc="$1"
|
|
fi
|
|
source "$zshrc"
|
|
}
|
|
|
|
# Provides a simple calculator.
|
|
function calc() {
|
|
echo "scale=4; $@" | bc -l
|
|
}
|
|
|
|
# Displays human readable disk usage statistics.
|
|
function duh() {
|
|
(( $# == 0 )) && set -- *
|
|
if [[ "$OSTYPE" == linux* ]]; then
|
|
du -khsc "$@" | sort -h -r
|
|
else
|
|
du -kcs "$@" | awk '{ printf "%9.1fM %s\n", $1 / 1024, $2 } ' | sort -n -r
|
|
fi
|
|
}
|
|
compdef _du duh
|
|
|
|
# Prints columns 1 2 3 ... n.
|
|
function slit() {
|
|
awk "{ print $(for n; do echo -n "\$$n,"; done | sed 's/,$//') }"
|
|
}
|
|
|
|
# Displays user owned process status.
|
|
function pmine() {
|
|
ps "$@" -u "$USER" -o pid,%cpu,%mem,command
|
|
}
|
|
compdef _ps pmine
|
|
|
|
# Finds files and executes a command on them.
|
|
function findexec() {
|
|
find . -type f -iname "*${1:-}*" -exec "${2:-file}" '{}' \;
|
|
}
|
|
|
|
# Serves a directory via HTTP.
|
|
function httpserve() {
|
|
python -m SimpleHTTPServer "$@"
|
|
}
|
|
|