oh-my-zsh/plugins/superb-aliases/superb-aliases.plugin.zsh

227 lines
8.2 KiB
Bash
Raw Normal View History

# Advanced Aliases.
# Use with caution
#
# ls, the common ones I use a lot shortened for rapid fire usage
alias l='ls -lFh' #size,show type,human readable
alias la='ls -lAFh' #long list,show almost all,show type,human readable
alias lr='ls -tRFh' #sorted by date,recursive,show type,human readable
alias lt='ls -ltFh' #long list,sorted by date,show type,human readable
alias ll='ls -lAFh' #same with la
alias ldot='ls -ld .*'
alias lS='ls -1FSsh'
alias lart='ls -1Fcart'
alias lrt='ls -1Fcrt'
alias zshrc='vim ~/.zshrc' # Quick access to the ~/.zshrc file
alias reload='source ~/.zshrc' #Reload ~/.zshrc
alias superb='nano ~/.oh-my-zsh/custom/plugins/superb-aliases/superb-aliases.plugin.zsh' #Quick access to ~/.superb-aliases.plugin.zsh
alias grep='grep --color'
alias sgrep='grep -R -n -H -C 5 --exclude-dir={.git,.svn,CVS} '
alias pgrep="grep '[0-9]\{3\}-[0-9]\{4\}' '$1'"
alias t='tail -f'
# Command line head / tail shortcuts
alias -g H='| head'
alias -g T='| tail'
alias -g G='| grep'
alias -g L="| less"
alias -g M="| most"
alias -g LL="2>&1 | less"
alias -g CA="2>&1 | cat -A"
alias -g NE="2> /dev/null"
alias -g NUL="> /dev/null 2>&1"
alias -g P="2>&1| pygmentize -l pytb"
alias dud='du -d 1 -h'
alias duf='du -sh *'
alias fd='find . -type d -name'
alias ff='find . -type f -name'
alias h='history | grep $1'
alias hgrep="fc -El 0 | grep"
alias help='man'
alias p='ps -f'
alias sortnr='sort -n -r'
alias unexport='unset'
alias j='jobs -l'
alias k='kill'
alias last='last -a'
alias whereami=display_info
alias nano='nano -W -m'
alias wget='wget -c'
alias c='clear'
alias cls='clear'
alias contents='/bin/tar -tzf'
alias rm='rm -iv'
alias cp='cp -iv'
alias mv='mv -iv'
alias rsync='rsync -avP'
# app-specificed
alias biggest='BLOCKSIZE=1048576; du -x | sort -nr | head -10'
alias boothistory='for wtmp in `dir -t /var/log/wtmp*`; do last reboot -f $wtmp; done | less'
alias charcount='wc -c $1'
alias cpu_hogs='ps wwaxr -o pid,stat,%cpu,time,command | head -10'
alias df='df -h -x tmpfs -x usbfs'
alias directorydiskusage='du -s -k -c * | sort -rn'
alias diskwho='sudo iotop'
alias dmidecode='sudo dmidecode --type 17 | more'
alias ducks='ls -A | grep -v -e '\''^\.\.$'\'' |xargs -i du -ks {} |sort -rn |head -16 | awk '\''{print $2}'\'' | xargs -i du -hs {}'
alias du='du -h --max-depth=1'
alias dush='du -sm *|sort -n|tail'
alias hiddenpnps='unhide (proc|sys|brute)'
alias hogc='ps -e -o %cpu,pid,ppid,user,cmd | sort -nr | head'
alias hogm='ps -e -o %mem,pid,ppid,user,cmd | sort -nr | head'
alias wordcount='wc -w $1'
alias topforever='top -l 0 -s 10 -o cpu -n 15'
alias osver='cat /etc/lsb-release'
alias osversion='sudo apt-show-versions'
alias exportkey='sudo apt-key export'
alias ffind='sudo find / -name $1'
alias processbycpuusage="ps -e -o pcpu,cpu,nice,state,cputime,args --sort pcpu | sed '/^ 0.0 /d'"
alias processbymemusage='ps -e -o rss=,args= | sort -b -k1,1n | pr -TW$COLUMNS'
alias processtree='ps -e -o pid,args --forest'
alias pss='ps -ef | grep $1'
alias sizeof='du -sh'
alias space='df -h'
# date & time
alias bdate="date '+%a, %b %d %Y %T %Z'"
alias cal='cal -3'
alias da='date "+%Y-%m-%d %A %T %Z"'
alias dateh='date --help|sed "/^ *%a/,/^ *%Z/!d;y/_/!/;s/^ *%\([:a-z]\+\) \+/\1_/gI;s/%/#/g;s/^\([a-y]\|[z:]\+\)_/%%\1_%\1_/I"|while read L;do date "+${L}"|sed y/!#/%%/;done|column -ts_'
alias daysleft='echo "There are $(($(date +%j -d"Dec 31, $(date +%Y)")-$(date +%j))) left in year $(date +%Y)."'
alias epochtime='date +%s'
alias mytime='date +%H:%M:%S'
alias ntpdate='sudo ntpdate ntp.ubuntu.com pool.ntp.org'
alias oclock='read -a A<<<".*.**..*....*** 8 9 5 10 6 0 2 11 7 4";for C in `date +"%H%M"|fold -w1`;do echo "${A:${A[C+1]}:4}";done'
alias onthisday='grep -h -d skip `date +%m/%d` /usr/share/calendar/*'
alias secconvert='date -d@1234567890'
alias stamp='date "+%Y%m%d%a%H%M"'
alias timestamp='date "+%Y%m%dT%H%M%S"'
alias today='date +"%A, %B %-d, %Y"'
alias weeknum='date +%V'
# miscellanous
alias killall='killall -u $USER -v'
alias less='less -Mw'
alias sdiff='/usr/bin/sdiff --expand-tabs --ignore-all-space --strip-trailing-cr --width=160'
alias updatedb='sudo updatedb'
alias updatefonts='sudo fc-cache -vf'
# network & internet
alias estab='ss -p | grep STA'
alias hdinfo='hdparm -i[I] /dev/sda'
alias hostip='wget http://checkip.dyndns.org/ -O - -o /dev/null | cut -d: -f 2 | cut -d\< -f 1'
alias hostname_lookup='lookupd -d'
alias http_trace='pkt_trace port 80'
alias iftop='sudo iftop -i eth0'
alias listen='sudo netstat -pnutl'
alias lsock='sudo /usr/sbin/lsof -i -P'
alias memrel='free && sync && echo 3 > /proc/sys/vm/drop_caches && free'
alias nethogs='sudo nethogs eth0'
alias netl='sudo nmap -sT -O localhost'
alias networkdump='sudo tcpdump not port 22'
alias nsl='netstat -f inet | grep -v CLOSE_WAIT | cut -c-6,21-94 | tail +2'
alias ns='netstat -alnp --protocol=inet | grep -v CLOSE_WAIT | cut -c-6,21-94 | tail +2'
alias openports='sudo netstat -nape --inet'
alias pkt_trace='sudo tcpflow -i `active_net_iface` -c'
alias ports='lsof -i -n -P'
alias portstats='sudo netstat -s'
alias ramvalue='sudo dd if=/dev/mem | cat | strings'
alias tcpstats='sudo netstat -st'
alias tcp_='sudo netstat -atp'
alias tcp_trace='pkt_trace tcp'
alias topsites='curl -s -O http://s3.amazonaws.com/alexa-static/top-1m.csv.zip ; unzip -q -o top-1m.csv.zip top-1m.csv ; head -1000 top-1m.csv | cut -d, -f2 | cut -d/ -f1 > topsites.txt'
alias udpstats='sudo netstat -su'
alias udp='sudo netstat -aup'
alias udp_trace='pkt_trace udp'
alias website_dl='wget --random-wait -r -p -e robots=off -U mozilla "$1"'
alias website_images='wget -r -l1 --no-parent -nH -nd -P/tmp -A".gif,.jpg" "$1"'
alias whois='whois -H'
alias wwwmirror2='wget -k -r -l ${2} ${1}' # wwwmirror2 [level] [site]
alias wwwmirror='wget -ErkK -np ${1}'
# permissions
alias 000='chmod 000'
alias 640='chmod 640'
alias 644='chmod 644'
alias 755='chmod 755'
alias 775='chmod 775'
alias mx='chmod a+x'
alias perm='stat --printf "%a %n \n "'
alias restoremod='chgrp users -R .;chmod u=rwX,g=rX,o=rX -R .;chown $(pwd |cut -d / -f 3) -R .'
# zsh is able to auto-do some kungfoo
# depends on the SUFFIX :)
if [ ${ZSH_VERSION//\./} -ge 420 ]; then
# open browser on urls
_browser_fts=(htm html de org net com at cx nl se dk dk php)
for ft in $_browser_fts ; do alias -s $ft=$BROWSER ; done
_editor_fts=(cpp cxx cc c hh h inl asc txt TXT tex)
for ft in $_editor_fts ; do alias -s $ft=$EDITOR ; done
_image_fts=(jpg jpeg png gif mng tiff tif xpm)
for ft in $_image_fts ; do alias -s $ft=$XIVIEWER; done
_media_fts=(ape avi flv mkv mov mp3 mpeg mpg ogg ogm rm wav webm)
for ft in $_media_fts ; do alias -s $ft=mplayer ; done
#read documents
alias -s pdf=acroread
alias -s ps=gv
alias -s dvi=xdvi
alias -s chm=xchm
alias -s djvu=djview
#list whats inside packed file
alias -s zip="unzip -l"
alias -s rar="unrar l"
alias -s tar="tar tf"
alias -s tar.gz="echo "
alias -s ace="unace l"
fi
# Make zsh know about hosts already accessed by SSH
zstyle -e ':completion:*:(ssh|scp|sftp|rsh|rsync):hosts' hosts 'reply=(${=${${(f)"$(cat {/etc/ssh_,~/.ssh/known_}hosts(|2)(N) /dev/null)"}%%[# ]*}//,/ })'
# Functions
#
# Max a box of '#' around given string
function box() { t="$1xxxx";c=${2:-#}; echo ${t//?/$c}; echo "$c $1 $c"; echo ${t//?/$c}; }
#
# Find your current IP over Internet
function myip() { lynx -dump -hiddenlinks=ignore -nolist http://checkip.dyndns.org:8245/ | awk '{ print $4 }' | sed '/^$/d; s/^[ ]*//g; s/[ ]*$//g' }
#
# Shows network information for your system
function netinfo()
{
echo "--------------- Network Information ---------------"
/sbin/ifconfig | awk /'inet addr/ {print $2}'
/sbin/ifconfig | awk /'Bcast/ {print $3}'
/sbin/ifconfig | awk /'inet addr/ {print $4}'
/sbin/ifconfig | awk /'HWaddr/ {print $4,$5}'
myip=`lynx -dump -hiddenlinks=ignore -nolist http://checkip.dyndns.org:8245/ | sed '/^$/d; s/^[ ]*//g; s/[ ]*$//g' `
echo "${myip}"
echo "---------------------------------------------------"
}
#
# Find & Chmod 755 for directories and 644 for files
function batch_chmod()
{
echo "Re-establish the dictatorship for all files and directories..."
find * -type d -print0 | xargs -0 chmod 0755 # for directories
find . -type f -print0 | xargs -0 chmod 0644 # for files
echo "."
echo ".."
echo "..."
echo "Done!"
}