Les meilleurs Alias Bash pour Linux, Unix et Mac OS X

Les alias sont des raccourcis commandes qui permettent aux utilisateur de lancer n’importe quelle commande ou groupe de commande en entrant un seul mot.

Les meilleurs Alias Bash pour Linux, Unix et Mac OS XUtilisez la commande alias pour afficher la liste de tous les alias définis. Vous pouvez ajouter des alias utilisateurs définis dans le fichier ~/.bashrc.

La syntaxe générale des commandes alias en bash est telle que:

Liste des alias

Entrez la commande suivante:

alias

En sortie:

alias ..=’cd ..’
alias amazonbackup=’s3backup’
alias apt-get=’sudo apt-get’

Par défaut, la commande alias affiche la liste des alias définis pour l’utilisateur.

Définir / créer un alias en bash

Pour créer un alias en bash, tapez la commande suivante:

alias name=value
alias name=’command’
alias name=’command arg1 arg2′
alias name=’/path/to/script’
alias name=’/path/to/script.pl arg1′

Dans cet exemple, vous créez l’alias c pour la commande clear command, qui dégage l’écran, en entrant la commande suivante puis en cliquant sur « Entrée »:

alias c=’clear’

Puis, pour dégager l’écran, au lieu de taper « clear », vous n’avez plus qu’à taper la lettre « c », puis « Entrée »:

c

Désactiver momentanément un alias en bash

Un alias peut être désactivé temporairement en utilisant la commande suivante:

## path/to/full/command
/usr/bin/clear
## call alias with a backslash ##
\c

Supprimer un alias en bash

Pour supprimer un alias, utilisez la commande unalias avec la syntaxe suivante:

unalias aliasname

Dans cet exemple, supprimez l’alias c créé dans l’exemple précédent:

unalias c

Il faut également supprimer l’alias du fichier ~/.bashrc en utilisant un éditeur de texte.

Alias permanents en bash

L’alias c reste effectif seulement pour la durée de la session. Si vous vous déconnectez ou que vous redémarrez le système, l’alias c disparaîtra. Pour éviter ce problème, ajouter l’alias au fichier  ~/.bashrc file, entrez:

vi ~/.bashrc

The alias c for the current user can be made permanent by entering the following line:

alias c=’clear’

Sauvegardez et fermez le fichier. La commande alias est inclue dans de nombreux shells tels que ksh, tcsh/csh, ash, bash, etc…

Pour des accès privilégiés

Vous pouvez entre la commande suivante dans le fichier ~/.bashrc:

# if user is not root, pass all commands via sudo #
if [ $UID -ne 0 ]; then
alias reboot=’sudo reboot’
alias update=’sudo apt-get upgrade’
fi

Pour les alias spécifiques

Vous pouvez entrer la commande suivante dans le fichier ~/.bashrc :

### Get os name via uname ###
_myos= »$(uname) »

### add alias as per os using $_myos ###
case $_myos in
Linux) alias foo=’/path/to/linux/bin/foo’;;
FreeBSD|OpenBSD) alias foo=’/path/to/bsd/bin/foo’ ;;
SunOS) alias foo=’/path/to/sunos/bin/foo’ ;;
*) ;;
esac

Voici une liste des meilleurs alias en Bash pour Linux, Unix et Mac OS X

Vous pouvez définir de nombreux types d’alias pour vous faire gagner en temps et en productivité.
#1: Control ls command output

La commande ls liste le contenu des repertoires et vous pouvez faire apparaître les sorties en couleur:

## Colorize the ls output ##
alias ls=’ls –color=auto’

## Use a long listing format ##
alias ll=’ls -la’

## Show hidden files ##
alias l.=’ls -d .* –color=auto’

#2: Control cd command behavior

## get rid of command not found ##
alias cd..=’cd ..’

## a quick way to get out of current directory ##
alias ..=’cd ..’
alias …=’cd ../../../’
alias ….=’cd ../../../../’
alias …..=’cd ../../../../’
alias .4=’cd ../../../../’
alias .5=’cd ../../../../..’

#3: Control grep command output

## Colorize the grep command output for ease of use (good for log files)##
alias grep=’grep –color=auto’
alias egrep=’egrep –color=auto’
alias fgrep=’fgrep –color=auto’

#4: Generate sha1 digest

alias sha1=’openssl sha1′

#5: Créer des répertoires parents à la demande

La commande mkdir est utilisée pour créer un répertoire:

alias mkdir=’mkdir -pv’

#6: Mettre en couleur diff output

Vous pouvez comparer les fichiers ligne par ligne en utilisant diff ainsi qu’un outil appelé colordiff pour mettre la sortie diff en couleur:

# install  colordiff package 🙂
alias diff=’colordiff’

#7: Rendre la sortie de la commande mount jolie et lisible:

alias mount=’mount |column -t’

#8: Raccourcis commande pour gagner du temps

# handy short cuts #
alias h=’history’
alias j=’jobs -l’

#9: Créer une nouvelle liste de commandes

alias path=’echo -e ${PATH//:/\\n}’
alias now=’date + »%T »‘
alias nowtime=now
alias nowdate=’date + »%d-%m-%Y »‘

#10: Mettre vim par défaut

alias vi=vim
alias svi=’sudo vi’
alias vis=’vim « +set si »‘
alias edit=’vim’

#11: Contrôle des pings

# Stop after sending count ECHO_REQUEST packets #
alias ping=’ping -c 5′
# Do not wait interval 1 second, go fast #
alias fastping=’ping -c 100 -s.2′

#12: Afficher les ports ouverts

Use netstat command to quickly list all TCP/UDP port on the server:

alias ports=’netstat -tulanp’

#13: rallumer les serveurs en veille

Wake-on-LAN (WOL) est un standard réseau Ethernet qui permet au serveur de s’allumer via un message réseau. Vous pouvez rapidement rallumer des appareils nas et des serveurs en utilisant les alias suivants:

## replace mac with your actual server mac address #
alias wakeupnas01=’/usr/bin/wakeonlan 00:11:32:11:15:FC’
alias wakeupnas02=’/usr/bin/wakeonlan 00:11:32:11:15:FD’
alias wakeupnas03=’/usr/bin/wakeonlan 00:11:32:11:15:FE’

#14: Control firewall output

Netfilter est un firewall pour Linux activé par défaut. Voici la plupart des commandes nécessaires pour sécuriser un système Linux des intrus:

## shortcut  for iptables and pass it via sudo#
alias ipt=’sudo /sbin/iptables’

# display all rules #
alias iptlist=’sudo /sbin/iptables -L -n -v –line-numbers’
alias iptlistin=’sudo /sbin/iptables -L INPUT -n -v –line-numbers’
alias iptlistout=’sudo /sbin/iptables -L OUTPUT -n -v –line-numbers’
alias iptlistfw=’sudo /sbin/iptables -L FORWARD -n -v –line-numbers’
alias firewall=iptlist

#15: Débugger un serveur web

# get web server headers #
alias header=’curl -I’

# find out if remote server supports gzip / mod_deflate or not #
alias headerc=’curl -I –compress’

#16: Ajouter des filets de sécurité

# do not delete / or prompt if deleting more than 3 files at a time #
alias rm=’rm -I –preserve-root’

# confirmation #
alias mv=’mv -i’
alias cp=’cp -i’
alias ln=’ln -i’

# Parenting changing perms on / #
alias chown=’chown –preserve-root’
alias chmod=’chmod –preserve-root’
alias chgrp=’chgrp –preserve-root’

#17: Mettre à jour un serveur Linux Debian

La commande apt-get est utilisée pour installer des paquets via internet.

# distro specific  – Debian / Ubuntu and friends #
# install with apt-get
alias apt-get= »sudo apt-get »
alias updatey= »sudo apt-get –yes »

# update on one command
alias update=’sudo apt-get update && sudo apt-get upgrade’

#18: Mettre à jour un serveur Linux RHEL / CentOS / Fedor

La commande yum est un outil de gestion pour RHEL / CentOS / Fedora Linux :

## distrp specifc RHEL/CentOS ##
alias update=’yum update’
alias updatey=’yum -y update’

#19: Tune sudo and su

# become root #
alias root=’sudo -i’
alias su=’sudo -i’

#20: Pass halt/reboot via sudo

La commande shutdown éteint le système Linux / Unix :

# reboot / halt / poweroff
alias reboot=’sudo /sbin/reboot’
alias poweroff=’sudo /sbin/poweroff’
alias halt=’sudo /sbin/halt’
alias shutdown=’sudo /sbin/shutdown’

#21: contrôler les serveurs web

# also pass it via sudo so whoever is admin can reload it without calling you #
alias nginxreload=’sudo /usr/local/nginx/sbin/nginx -s reload’
alias nginxtest=’sudo /usr/local/nginx/sbin/nginx -t’
alias lightyload=’sudo /etc/init.d/lighttpd reload’
alias lightytest=’sudo /usr/sbin/lighttpd -f /etc/lighttpd/lighttpd.conf -t’
alias httpdreload=’sudo /usr/sbin/apachectl -k graceful’
alias httpdtest=’sudo /usr/sbin/apachectl -t && /usr/sbin/apachectl -t -D DUMP_VHOSTS’

#22: Alias pour les sauvegardes

# if cron fails or if you want backup on demand just run these commands #
# again pass it via sudo so whoever is in admin group can start the job #
# Backup scripts #
alias backup=’sudo /home/scripts/admin/scripts/backup/wrapper.backup.sh –type local –taget /raid1/backups’
alias nasbackup=’sudo /home/scripts/admin/scripts/backup/wrapper.backup.sh –type nas –target nas01′
alias s3backup=’sudo /home/scripts/admin/scripts/backup/wrapper.backup.sh –type nas –target nas01 –auth /home/scripts/admin/.authdata/amazon.keys’
alias rsnapshothourly=’sudo /home/scripts/admin/scripts/backup/wrapper.rsnapshot.sh –type remote –target nas03 –auth /home/scripts/admin/.authdata/ssh.keys –config /home/scripts/admin/scripts/backup/config/adsl.conf’
alias rsnapshotdaily=’sudo  /home/scripts/admin/scripts/backup/wrapper.rsnapshot.sh –type remote –target nas03 –auth /home/scripts/admin/.authdata/ssh.keys  –config /home/scripts/admin/scripts/backup/config/adsl.conf’
alias rsnapshotweekly=’sudo /home/scripts/admin/scripts/backup/wrapper.rsnapshot.sh –type remote –target nas03 –auth /home/scripts/admin/.authdata/ssh.keys  –config /home/scripts/admin/scripts/backup/config/adsl.conf’
alias rsnapshotmonthly=’sudo /home/scripts/admin/scripts/backup/wrapper.rsnapshot.sh –type remote –target nas03 –auth /home/scripts/admin/.authdata/ssh.keys  –config /home/scripts/admin/scripts/backup/config/adsl.conf’
alias amazonbackup=s3backup

#23: Pour le bureau: jouer des fichiers avi/mp3 à la demande

## play video files in a current directory ##
# cd ~/Download/movie-name
# playavi or vlc
alias playavi=’mplayer *.avi’
alias vlc=’vlc *.avi’

# play all music files from the current directory #
alias playwave=’for i in *.wav; do mplayer « $i »; done’
alias playogg=’for i in *.ogg; do mplayer « $i »; done’
alias playmp3=’for i in *.mp3; do mplayer « $i »; done’

# play files from nas devices #
alias nplaywave=’for i in /nas/multimedia/wave/*.wav; do mplayer « $i »; done’
alias nplayogg=’for i in /nas/multimedia/ogg/*.ogg; do mplayer « $i »; done’
alias nplaymp3=’for i in /nas/multimedia/mp3/*.mp3; do mplayer « $i »; done’

# shuffle mp3/ogg etc by default #
alias music=’mplayer –shuffle *’

#24: Set default interfaces for sys admin related commands

vnstat est un moniteur de contrôle du trafic réseau. dnstop est un outil permettant d’analyser le trafic DNS. Les commandes tcptrack et iftop affiche les informations concernant les connections TCP/UDP qu’il voit dans l’interface réseau et affiche également l’utilisation de la bande-passante.

## All of our servers eth1 is connected to the Internets via vlan / router etc  ##
alias dnstop=’dnstop -l 5  eth1′
alias vnstat=’vnstat -i eth1′
alias iftop=’iftop -i eth1′
alias tcpdump=’tcpdump -i eth1′
alias ethtool=’ethtool eth1′

# work on wlan0 by default #
# Only useful for laptop as all servers are without wireless interface
alias iwconfig=’iwconfig wlan0′

#25: Accéder rapidement aux informations concernant la mémoire système, l’usage du cpu system memory, et les infos mémoire gpu.

## pass options to free ##
alias meminfo=’free -m -l -t’

## get top process eating memory
alias psmem=’ps auxf | sort -nr -k 4′
alias psmem10=’ps auxf | sort -nr -k 4 | head -10′

## get top process eating cpu ##
alias pscpu=’ps auxf | sort -nr -k 3′
alias pscpu10=’ps auxf | sort -nr -k 3 | head -10′

## Get server cpu info ##
alias cpuinfo=’lscpu’

## older system use /proc/cpuinfo ##
##alias cpuinfo=’less /proc/cpuinfo’ ##

## get GPU ram on desktop / laptop##
alias gpumeminfo=’grep -i –color memory /var/log/Xorg.0.log’

#26: Contrôler le routeur

La commande curl peut être utiliser pour redémarrer les routeurs Linksys.

# Reboot my home Linksys WAG160N / WAG54 / WAG320 / WAG120N Router / Gateway from *nix.
alias rebootlinksys= »curl -u ‘admin:my-super-password’ ‘http://192.168.1.2/setup.cgi?todo=reboot' »

# Reboot tomato based Asus NT16 wireless bridge
alias reboottomato= »ssh admin@192.168.1.1 /sbin/reboot »

#27 Remettre wget par défaut

## this one saved by butt so many times ##
alias wget=’wget -c’

#28 Utiliser différents navigateurs pour tester des sites web

## this one saved by butt so many times ##
alias ff4=’/opt/firefox4/firefox’
alias ff13=’/opt/firefox13/firefox’
alias chrome=’/opt/google/chrome/chrome’
alias opera=’/opt/opera/opera’

#default ff
alias ff=ff13

#my default browser
alias browser=chrome

#29: Infos concernant l’alias ssh

Ne créez pas d’alias ssh, à la place, utilisez ~/.ssh/config OpenSSH SSH client configuration files. Il fournit plus d’options. Par exemple:

Host server10
Hostname 1.2.3.4
IdentityFile ~/backups/.ssh/id_dsa
user foobar
Port 30000
ForwardX11Trusted yes
TCPKeepAlive yes

Vous pouvez maintenant vous connecter au peer1 en utilisant la syntaxe suivante:
$ ssh server10

Commentez ou posez votre question

Votre email ne sera pas public.