Voici une petite sélection d' "alias" et de "function" placées dans le fichier .bashrc
Si vous en avez d'autres, merci de les ajouter..
(eventuellement avec un commentaire décrivant l'utilité)
Ce qui serait sympa pour faciliter la lecture du thread, c'est de
simplement ajouter ceux non listés dans les posts précédents plutot que de copier tout votre .bashrc...merci...
Je ne suis biensur pas l'auteur de la totalité (que les auteurs originaux me pardonnent de ne pas pouvoir les citer)
alias bip='putty -load Nom &'
alias path='echo $PATH'
alias ba='vi ~/.bashrc;source ~/.bashrc'
alias ccze='ccze -A'
alias cgrep='grep --color=always'
alias ls='ls --color=always'
alias dir='dir --color=always'
alias ll='ls -alh'
alias log='tail -f /var/log/mail.log|ccze -A'
alias lsd='ls -d */'
alias lll='ls -la | less'
alias cd..='cd ..'
alias md='mkdir'
alias tt='telnet'
alias up='sudo apt-get update && sudo apt-get upgrade'
alias se='sudo apt-cache search'
alias ins='sudo apt-get install'
alias ee='exit'
alias q='exit'
alias in='sudo vi /etc/network/interfaces'
alias re='sudo /etc/init.d/networking restart'
alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
alias c='clear'
alias du='du -kh'
alias dud='du --max-depth=0'
alias df='df -kTh'
alias stat="echo ' ' && uname -a && echo ' '&& uptime &&echo ' '&& df && echo ' '"
alias ps='ps aux'
alias build='./configure && make && sudo make install'
alias grepc='grep -v \^#'
alias g='grep'
alias G='grep -i'
alias im='import /home/user/Desktop/toto.png'
alias so='sudo vi /etc/apt/sources.list'
alias cp='cp -i'
alias mv='mv -i'
alias svi="sudo vi"
alias sless="sudo less"
alias stail="sudo tail"
alias h='history'
alias path='echo -e ${PATH//:/\\n}'
alias lm='ls -al |most'
alias xs='cd'
alias vf='cd'
alias mm='ll'
alias myps='/bin/ps -u "$USER" -o user,pid,ppid,pcpu,pmem,args|less'
alias hgrep='history | grep --color=always'
alias which='type -all'
alias eterm='Eterm -Ox --scrollbar no --buttonbar no --font-fx none -f white Eterm -g 120x30+100+100 --shade 50'
alias cd-='cd -'
alias removeemptylines="sed -i -e '/^$/d'"
alias s='sudo'
alias ccal='var=$(cal -m); echo "${var/$(date +%-d)/$(echo -e "\033[1;31m$(date +%-d)\033[0m")}"'
alias t='tail'
alias tf='tail -f'
alias +x='chmod +x'
alias epoch='date +%s'
alias mark='echo =============================='
function load { ######## change la couleur du load en fonction de sa valeur
Load=`cat /proc/loadavg | awk '{print $1}'`
IntLoad=`echo $Load | cut -f1 -d.`
if [ $IntLoad -le 0 ] ; then
LoadColor=
elif [ $IntLoad -le 1 ] ; then
LoadColor=$MAGENTA
elif [ $IntLoad -le 4 ] ; then
LoadColor=$RED
else
LoadColor=$DARKRED
fi
echo -e "
[$LoadColor$Load$BLACK]
"
}
# This addpath adds a path only if it's not already in $PATH and it's a dir.
function myaddpath () {
case :$PATH: in *:$1:*) ;; *) [ -d $1 ] && PATH="$PATH${PATH:+:}$1" ;; esac
}
#liste les alias et functions
function listba(){
cat .bashrc|egrep "alias|function"|grep -v "^#"|most
}
#Cree le repertoire et va dedans
function mkcd() {
mkdir $1 && cd $1
}
#Whois sans les commentaires
function ww() {
whois $1 | grep -v "^%"|most
}
# gpg
function sgpg { gpg --keyserver pgp.mit.edu --search-key "$1"; }
# Quels sont les fichiers arrivés
function lsml () {
clear && ssh login@server "ls -lha --color=always /var/mldonkey/incoming/files/"
}
#chope l'adresse IP publique
function pub()
{
wget -O - -q http://www.whatismyip.com | grep -i "<TITLE>Your IP" | awk '{print $4}'
}
#lynx --dump http://www.whatismyip.com/|grep Your|awk '{print $4}'
#chope l'adresse IP (privee)
function priv()
{
ifconfig eth0|grep "inet adr"|awk '{print $2}'|awk -F ':' '{print $2}'
}
# Temperature a Paris (en dessous de 0 pas glop en moto)
function tempe
{
lynx -dump http://fr.weather.yahoo.com/FRXX/FRXX0076/index_c.html|grep -A1 "Aujourd'hui"|grep -v "Aujourd'hui"|awk '{
print $1}'
}
# repeat n times command
function repeat()
{
local i max
max=$1; shift;
for ((i=1; i <= max ; i++)); do
eval "$@";
done
}
## killps pour tuer un process
function ask()
{
echo -n "$@" '[y/n] ' ; read ans
case "$ans" in
y*|Y*) return 0 ;;
*) return 1 ;;
esac
}
function killps() # Kill process by name
{ # works with gawk too
local pid pname sig="-TERM" # default signal
if [ "$#" -lt 1 ] || [ "$#" -gt 2 ]; then
echo "Usage: killps [-SIGNAL] pattern"
return;
fi
if [ $# = 2 ]; then sig=$1 ; fi
for pid in $(my_ps | nawk '!/nawk/ && $0~pat { print $2 }' pat=${!#}) ; do
pname=$(my_ps | nawk '$2~var { print $6 }' var=$pid )
if ask "Kill process $pid <$pname> with signal $sig ? "
then kill $sig $pid
fi
done
}
# Find a file with a pattern in name - dans le rep local:
function ff() { find . -type f -iname '*'$*'*' -ls ; }
# Find a file with a pattern in name - dans /:
function ffslash() { sudo find / -type f -iname '*'$*'*' -ls ; }
#n'a pas l air de fonctionner... ?
function fstr() # find a string in a set of files localement
{
if [ "$#" -gt 2 ]; then
echo "Usage: fstr \"pattern\" [files] "
return;
fi
SMSO=$(tput smso)
RMSO=$(tput rmso)
find . -type f -name "${2:-*}" -print | xargs grep -sin "$1" | \
sed "s/$1/$SMSO$1$RMSO/gI"
}
#n'a pas l air de fonctionner... ?
function fstrslash() # find a string in a set of files de /
{
if [ "$#" -gt 2 ]; then
echo "Usage: fstr \"pattern\" [files] "
return;
fi
SMSO=$(tput smso)
RMSO=$(tput rmso)
sudo find / -type f -name "${2:-*}" -print | xargs grep -sin "$1" | sed "s/$1/$SMSO$1$RMSO/gI"
}
# swap 2 filenames around
function swap()
{
local TMPFILE=tmp.$$
mv "$1" $TMPFILE
mv "$2" "$1"
mv $TMPFILE "$2"
}
# move filenames to lowercase
function lowercase()
{
for file ; do
filename=${file##*/}
case "$filename" in
*/*) dirname==${file%/*} ;;
*) dirname=.;;
esac
nf=$(echo $filename | tr A-Z a-z)
newname="${dirname}/${nf}"
if [ "$nf" != "$filename" ]; then
mv "$file" "$newname"
echo "lowercase: $file --> $newname"
else
echo "lowercase: $file not changed."
fi
done
}
function fncorrect_lowercase() # Correct filenames to lowercase
{
if [ "$#" = 0 ]
then
echo "Usage: fncorrect_lowercase [filenames...]"
return 0
fi
for arg in "$@"
do
filename=`basename "$arg"`
dirname=`dirname "$arg"`
oldname=`echo "$filename" | sed -e "s/ /\\\\ /"`
newname=`echo "$filename" | tr A-Z a-z`
if [ ! -e "$dirname/$oldname" ];
then
echo "$dirname/$oldname does not exists."
elif [ "$oldname" = "$newname" ]
then
echo "$dirname/$oldname needs no change, skipping..."
elif [ -e "$dirname/$newname" ]
then
echo "$dirname/$newname exists, skipping..."
else
mv "$dirname/$oldname" "$dirname/$newname"
echo "$dirname/$oldname => $dirname/$newname"
fi
done
}
#[yannick@yop ~] fncorrect_lowercase TuTgFdSFqdqsdSDQDdfsdfhKJHsdfsdfKJH
#./TuTgFdSFqdqsdSDQDdfsdfhKJHsdfsdfKJH => ./tutgfdsfqdqsdsdqddfsdfhkjhsdfsdfkjh
function fncorrect_spaces() # Correct spaces in filenames
{
if [ "$#" = 0 ]
then
echo "Usage: fncorrect_spaces [filenames...]"
return 0
fi
for arg in "$@"
do
filename=`basename "$arg"`
dirname=`dirname "$arg"`
oldname=`echo "$filename" | sed -e "s/ /\\\\ /"`
newname=`echo "$filename" | sed -e : -e s/\ /_/ -e s/%20/_/ -e s/%28/[/ -e s/%29/]/ -e s/%5B/[/ -e s/
%5D/]/ -e t`
if [ ! -e "$dirname/$oldname" ];
then
echo "$dirname/$oldname does not exists."
elif [ "$oldname" = "$newname" ]
then
echo "$dirname/$oldname needs no change, skipping..."
elif [ -e "$dirname/$newname" ]
then
echo "$dirname/$newname exists, skipping..."
else
mv "$dirname/$oldname" "$dirname/$newname"
echo "$dirname/$oldname => $dirname/$newname"
fi
done
}
#[yannick@yop ~] fncorrect_spaces totot\ tottot\ \ t\ sdf\ sdf\ \ fh\ sfh\ ss\ fj\ s\ fshf\ \ sdfs/
#./totot tottot t sdf sdf fh sfh ss fj s fshf sdfs => ./totot_tottot__t_sdf_sdf__fh_sfh_ss_fj_s_fshf__sdfs
# greps the running process list for the value of $1
psgrep() {
local name=$1
ps aux | grep "${name}" | sed '$d'
unset $name
}
# gojo - tries to unarchive anything thrown at it
gojo() {
##### Probably done more robustly with file(1) but not as easily
local FILENAME="${1}"
local FILEEXTENSION=`echo ${1} | cut -d. -f2-`
case "$FILEEXTENSION" in
tar)
tar xvf "$FILENAME";;
tar.gz)
tar xzvf "$FILENAME";;
tgz)
tar xzvf "$FILENAME";;
gz)
gunzip "$FILENAME";;
tbz)
tar xjvf "$FILENAME";;
tbz2)
tar xjvf "$FILENAME";;
tar.bz2)
tar xjvf "$FILENAME";;
tar.bz)
tar xjvf "$FILENAME";;
bz2)
bunzip2 "$FILENAME";;
tar.Z)
tar xZvf "$FILENAME";;
Z)
uncompress "$FILENAME";;
zip)
unzip "$FILENAME";;
rar)
unrar x "$FILENAME";;
esac
}
#envoyer le bashrc sur un autre server
function sendbashrc()
{
scp ~/.bashrc $1:~/.bashrc.$HOST
}
# from http://www.everythingsysadmin.com/archives/000054.html#more, finds machines sending abnormal amounts of arp re
quests
lARPing() {
sudo /usr/sbin/tcpdump -l -n arp | egrep 'arp who-has' | head -100 | awk '{ print $NF }' |sort | uniq -c | so
rt -n
}