227 lines
8.2 KiB
Bash
227 lines
8.2 KiB
Bash
|
# 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!"
|
||
|
}
|