30 alias de shell bash pratiques pour Linux / Unix / Mac OS X – Serveur d’impression
UNEn bash alias n’est que le raccourci vers les commandes. La commande alias permet à l'utilisateur de lancer n'importe quelle commande ou groupe de commandes (y compris les options et les noms de fichiers) en entrant un seul mot. Utilisez la commande alias pour afficher une liste de tous les alias définis. Vous pouvez ajouter des alias définis par l'utilisateur au fichier ~ / .bashrc. Vous pouvez réduire le temps de frappe avec ces alias, travailler intelligemment et augmenter la productivité à l’invite de commande.
Cet article explique comment créer et utiliser des alias, dont 30 exemples pratiques d'alias de shell bash.
En savoir plus sur les alias de shell bash
La syntaxe générale de la commande alias pour le shell bash est la suivante:
Comment lister les alias bash
Tapez la commande d'alias suivante:alias
Exemples de sortie:
alias .. = 'cd ..' alias amazonbackup = 's3backup' alias apt-get = 'sudo apt-get' ...
Par défaut, la commande alias affiche une liste des alias définis pour l'utilisateur actuel.
Comment définir ou créer un alias de shell bash
Pour créer l'alias, utilisez la syntaxe suivante:
alias prénom= valeur alias prénom='commander' alias prénom='commande arg1 arg2' alias prénom='/ chemin / vers / script' alias prénom='/path/to/script.pl arg1' |
Dans cet exemple, créez l'alias c pour la commande clear couramment utilisée, qui efface l'écran, en tapant la commande suivante puis en appuyant sur la touche Entrée:
Ensuite, pour effacer l'écran, au lieu de taper effacer, il vous suffirait de taper la lettre «c» et d'appuyer sur la touche [ENTER] clé:
Comment désactiver temporairement un alias bash
Un alias peut être désactivé temporairement à l'aide de la syntaxe suivante:
## path / to / full / command /usr/poubelle/clair ## appel alias avec une barre oblique inverse ## c ## utilise la commande / bin / ls et évite ls alias ## commander ls |
Comment supprimer / supprimer un alias bash
Vous devez utiliser la commande appelée unalias pour supprimer les alias. Sa syntaxe est la suivante:
unalias alias unalias foo |
Dans cet exemple, supprimez l'alias c qui avait été créé dans un exemple précédent:
Vous devez également supprimer l'alias du fichier ~ / .bashrc à l'aide d'un éditeur de texte (voir section suivante).
Comment rendre les alias de shell bash permanents
L'alias c reste en vigueur uniquement pendant la session de connexion en cours. Une fois que vous vous êtes déconnecté ou que vous avez redémarré le système, l'alias c disparaîtra. Pour éviter ce problème, ajoutez un alias à votre fichier ~ / .bashrc, entrez:
L'alias c de l'utilisateur actuel peut être rendu permanent en entrant la ligne suivante:
Enregistrez et fermez le fichier. Les alias à l’échelle du système (c’est-à-dire des alias pour tous les utilisateurs) peuvent être placés dans le fichier / etc / bashrc. Veuillez noter que la commande alias est intégrée à différents shells, notamment ksh, tcsh / csh, ash, bash et autres.
Une note sur l'accès privilégié
Vous pouvez ajouter du code comme suit dans ~ / .bashrc:
# Si l'utilisateur n'est pas root, transmettez toutes les commandes via sudo # si [[[[ $ UID -ne 0 ]; puis alias redémarrer='sudo reboot' alias mettre à jour='sudo apt-get upgrade' Fi |
Une note sur les alias spécifiques à l'OS
Vous pouvez ajouter du code comme suit dans ~ / .bashrc en utilisant l'instruction case:
### Obtenir le nom de l'OS via uname ### _myos="$ (uname)" ### ajouter un alias selon le système d'exploitation en utilisant $ _myos ### Cas $ _myos dans Linux) alias foo='/ chemin / vers / linux / bin / foo';; FreeBSD|OpenBSD) alias foo='/ chemin / vers / bsd / bin / foo' ;; SunOS) alias foo='/ chemin / vers / sunos / bin / foo' ;; *) ;; esac |
30 exemples d'alias de shell bash
Vous pouvez définir différents alias de types comme suit pour gagner du temps et augmenter votre productivité.
# 1: sortie de la commande Control ls
La commande ls liste le contenu du répertoire et vous pouvez coloriser la sortie:
## Colorise la sortie ls ## alias ls='ls --color = auto' ## Utiliser un format de liste longue ## alias ll='ls -la' ## Montrer les fichiers cachés ## alias l. ='ls -d. * --color = auto' |
# 2: Contrôler le comportement de la commande cd
## se débarrasser de la commande non trouvée ## alias cd .. ='cd ..' ## un moyen rapide de sortir du répertoire courant ## alias .. ='cd ..' alias ... ='cd ../../../' alias .... ='cd ../../../../' alias ..... ='cd ../../../../' alias .4 ='cd ../../../../' alias .5 ='cd ../../../../ ..' |
# 3: Contrôle de la sortie de la commande grep
La commande grep est un utilitaire de ligne de commande permettant de rechercher dans des fichiers en texte brut des lignes correspondant à une expression régulière:
## Colorise le résultat de la commande grep pour en faciliter l’utilisation (bon pour les fichiers journaux) ## alias grep='grep --color = auto' alias egrep='egrep --color = auto' alias fgrep='fgrep --color = auto' |
# 4: Démarrer la calculatrice avec support mathématique
# 4: Générer sha1 digérer
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:
# 6: Colorise la sortie diff
Vous pouvez comparer des fichiers ligne par ligne en utilisant diff et utiliser un outil appelé colordiff pour coloriser la sortie de diff:
# installer le paquet colordiff :) alias diff='colordiff' |
# 7: Rendre la sortie de la commande mount jolie et lisible
alias monter='mount | column -t' |
# 8: Commandes raccourcis pour gagner du temps
# raccourcis pratiques # alias h='l'histoire' alias j='jobs -l' |
# 9: Créer un nouvel ensemble de commandes
alias chemin='echo -e $ PATH //: / \ n' alias à présent='date + "% T"' alias maintenant= maintenant alias maintenant='date + "% d-% m-% Y"' |
# 10: Définir vim comme valeur par défaut
alias vi=vim alias SVI='sudo vi' alias vis='vim "+ set si"' alias modifier='vim' |
# 11: La sortie de contrôle d'un outil de réseau appelé ping
# Arrête après l'envoi du nombre de paquets ECHO_REQUEST # alias ping='ping -c 5' # Ne pas attendre l'intervalle 1 seconde, aller vite # alias jeûne='ping -c 100 -s.2' |
# 12: Afficher les ports ouverts
Utilisez la commande netstat pour répertorier rapidement tous les ports TCP / UDP sur le serveur:
alias les ports='netstat -tulanp' |
# 13: serveurs de sommeil Wakeup
Wake-on-LAN (WOL) est une norme de réseau Ethernet permettant à un serveur d'être activé par un message réseau. Vous pouvez rapidement réveiller les périphériques nas et le serveur en utilisant les alias suivants:
## remplacez mac par votre adresse MAC actuelle du serveur # 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: sortie du pare-feu de contrôle (iptables)
Netfilter est un pare-feu basé sur un hôte pour les systèmes d'exploitation Linux. Il est inclus dans la distribution Linux et est activé par défaut. Cet article répertorie les solutions iptables les plus courantes requises par un nouvel utilisateur Linux pour sécuriser son système d'exploitation Linux contre les intrus.
## raccourci pour iptables et le transmettre via sudo # alias ipt='sudo / sbin / iptables' # afficher toutes les règles # alias iptlist='sudo / sbin / iptables -L -n -v --numéro-lignes' 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 pare-feu= iptlist |
# 15: problèmes de serveur web / cdn avec curl
# obtenir des en-têtes de serveur Web # alias entête='curl -I' # savoir si le serveur distant prend en charge gzip / mod_deflate ou non # alias tête='curl -I --compress' |
# 16: Ajouter des filets de sécurité
# ne pas supprimer / ou demander si la suppression de plus de 3 fichiers à la fois # alias rm='rm -I --preserve-root' # confirmation # alias mv='mv -i' alias cp='cp -i' alias dans='ln -i' # La parentalité change de permanente sur / # alias chown='chown --preserve-root' alias chmod='chmod --preserve-root' alias chgrp='chgrp --preserve-root' |
# 17: Mettre à jour le serveur Linux Debian
La commande apt-get est utilisée pour installer des paquets sur Internet (ftp ou http). Vous pouvez également mettre à niveau tous les packages en une seule opération:
# spécifique à la distribution - Debian / Ubuntu et ses amis # # installer avec apt-get alias apt-get ="sudo apt-get" alias mise à jour="sudo apt-get --yes" # mise à jour sur une commande alias mettre à jour='sudo apt-get update && sudo apt-get upgrade' |
N ° 18: Mise à jour du serveur RHEL / CentOS / Fedora Linux
La commande yum est un outil de gestion de paquets pour RHEL / CentOS / Fedora Linux et ses amis:
## distrp specifc RHEL / CentOS ## alias mettre à jour='miam mise à jour' alias mise à jour='miam-y mise à jour' |
# 19: Accordez sudo et su
# devenir root # alias racine='sudo -i' alias su='sudo -i' |
# 20: Passer l'arrêt / le redémarrage via sudo
La commande shutdown arrête le système Linux / Unix:
# redémarrage / arrêt / mise hors tension alias redémarrer='sudo / sbin / reboot' alias éteindre='sudo / sbin / poweroff' alias arrêt='sudo / sbin / halt' alias fermer='sudo / sbin / shutdown' |
# 21: Contrôler les serveurs Web
# le transmettra aussi via sudo pour que tout administrateur puisse le recharger sans vous appeler # 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 test de lumière='sudo / usr / sbin / lighttpd -f /etc/lighttpd/lighttpd.conf -t' alias httpdreload='sudo / usr / sbin / apachectl -k gracieux' alias httpdtest='sudo / usr / sbin / apachectl -t && / usr / sbin / apachectl -t -D DUMP_VHOSTS' |
# 22: Un alias dans nos fichiers de sauvegarde
# si cron échoue ou si vous voulez une sauvegarde à la demande, exécutez ces commandes # # le passe à nouveau via sudo pour que le membre du groupe admin puisse commencer le travail # # Scripts de sauvegarde # alias sauvegarde='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 |
N ° 23: Spécifique au bureau – Lecture de fichiers avi / mp3 à la demande
## lire des fichiers vidéo dans un répertoire en cours ## # cd ~ / Télécharger / nom-film # playavi ou vlc alias Playavi='mplayer * .avi' alias vlc='vlc * .avi' # lire tous les fichiers de musique du répertoire en cours # alias Playwave='pour i in * .wav; faire mplayer "$ i"; terminé' alias playogg='pour i in * .ogg; faire mplayer "$ i"; terminé' alias Jouer Mp3='pour i dans * .mp3; faire mplayer "$ i"; terminé' # lire des fichiers à partir de périphériques nas # alias Nplaywave='for i in /nas/multimedia/wave/*.wav; faire mplayer "$ i"; terminé' alias Nplayogg='for i in /nas/multimedia/ogg/*.ogg; faire mplayer "$ i"; terminé' alias nplaymp3='for i in /nas/multimedia/mp3/*.mp3; faire mplayer "$ i"; terminé' # shuffle mp3 / ogg etc. par défaut # alias la musique='mplayer --shuffle *' |
# 24: Définir les interfaces par défaut pour les commandes liées à l'administrateur système
vnstat est un moniteur de trafic réseau basé sur une console. dnstop est un outil de la console pour analyser le trafic DNS. Les commandes tcptrack et iftop affichent des informations sur les connexions TCP / UDP qu'il voit sur une interface réseau et affichent l'utilisation de la bande passante sur une interface par hôte, respectivement.
## Tous nos serveurs eth1 sont connectés aux 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' # travailler sur wlan0 par défaut # # Utile uniquement pour les ordinateurs portables car tous les serveurs sont sans interface sans fil alias iwconfig='iwconfig wlan0' |
# 25: Récupérer rapidement la mémoire système, l'utilisation du processeur et les informations sur la mémoire gpu
## options de passage pour libérer ## alias meminfo='libre -m -l -t' ## Obtient le meilleur processus en mangeant de la mémoire alias psmem='ps auxf | trier -nr -k 4 ' alias psmem10='ps auxf | trier -nr -k 4 | tête -10 ' ## get top process eating cpu ## alias pscpu='ps auxf | trier -nr -k 3 ' alias pscpu10='ps auxf | trier -nr -k 3 | tête -10 ' ## Obtenir des informations sur le processeur du serveur ## alias cpuinfo='lscpu' ## utilisation plus ancienne du système / proc / cpuinfo ## ## alias cpuinfo = 'less / proc / cpuinfo' ## ## obtenir GPU RAM sur le bureau / ordinateur portable ## alias gpumeminfo='grep -i --color memory /var/log/Xorg.0.log' |
# 26: Routeur domestique de contrôle
La commande curl peut être utilisée pour redémarrer les routeurs Linksys.
# Redémarrer ma maison Routeur / passerelle Linksys WAG160N / WAG54 / WAG320 / WAG120N de * nix. alias rebootlinksys="curl -u 'admin: mon-mot de passe super' 'http://192.168.1.2/setup.cgi?todo=reboot'" # Redémarrer le pont sans fil Asus NT16 à base de tomates alias reboottomato="ssh admin@192.168.1.1 / sbin / reboot" |
# 27 Reprendre wget par défaut
GNU Wget est un utilitaire gratuit pour le téléchargement non interactif de fichiers depuis le Web. Il prend en charge les protocoles HTTP, HTTPS et FTP et peut également reprendre les téléchargements:
## Celui-ci sauvé par le cul autant de fois ## alias wget='wget -c' |
# 28 Utiliser un navigateur différent pour tester le site Web
## Celui-ci sauvé par le cul autant de fois ## alias ff4='/ opt / firefox4 / firefox' alias ff13='/ opt / firefox13 / firefox' alias chrome='/ opt / google / chrome / chrome' alias opéra='/ opt / opera / opera' #default ff alias ff= ff13 #mon navigateur par défaut alias navigateur= chrome |
N ° 29: Une note à propos de ssh alias
Ne créez pas d'alias ssh, utilisez plutôt les fichiers de configuration du client SSH OpenSSH ~ / .ssh / config. Il offre plus d'option. Un exemple:
Serveur hôte10
Nom d'hôte 1.2.3.4
IdentityFile ~ / backups / .ssh / id_dsa
utilisateur foobar
Port 30000
ForwardX11Trusted oui
TCPKeepAlive oui
|
Vous pouvez maintenant vous connecter à peer1 en utilisant la syntaxe suivante:$ ssh server10
N ° 30: à votre tour de partager…
## définir d'autres valeurs par défaut ## alias df='df -H' alias du='du -ch' # top est au sommet, tout comme vi est vim alias Haut='un haut' ## nfsrestart - doit être root ## ## actualise nfs mount / cache etc. pour Apache ## alias nfsrestart='sync && sleep 2 && &etc/init.d/httpd stop && umount netapp2: / exports / http && sleep 2 && monter-sur, Sync, rsize = 32768, wsize = 32768, intr, dur, proto = tcp, fsc natapp2: / exports / http / var / www / html && /etc/init.d/httpd start ' ## Etat du serveur Memcached ## alias mcdstats='/ usr / bin / memcached-tool 10.10.27.11:11211 stats' alias mcdshow='display / usr / bin / memcached-tool 10.10.27.11:11211' ## vider rapidement le serveur memcached ## alias flushmcd='echo "flush_all" | nc 10.10.27.11 11211 ' ## Supprimer rapidement les actifs de Akamai / Amazon cdn ## alias cdndel='/ home / scripts / admin / cdn / purge_cdn_cache --profile akamai' alias amzcdndel='/ home / scripts / admin / cdn / purge_cdn_cache --profile amazon' ## liste de fourniture des URL via le fichier ou stdin alias cdnmdel='/ home / scripts / admin / cdn / purge_cdn_cache --profile akamai --stdin' alias amzcdnmdel='/ home / scripts / admin / cdn / purge_cdn_cache --profile amazon --stdin' |
Conclusion
Cet article résume plusieurs types d’utilisation des alias * nix bash:
- Définition des options par défaut pour une commande (par exemple, définissez eth0 comme option par défaut pour la commande ethtool via alias ethtool = 'ethtool eth0' ).
- Correction de fautes de frappe (cd .. agira comme cd .. via alias cd .. = 'cd ..').
- Réduire la quantité de frappe.
- Définition du chemin par défaut d’une commande existant dans plusieurs versions d’un système (par exemple, GNU / grep se trouve dans / usr / local / bin / grep et Unix, grep se trouve dans / bin / grep. Pour utiliser GNU grep, utilisez alias grep = '/ usr / local / bin / grep' ).
- Ajouter les filets de sécurité à Unix en rendant les commandes interactives en définissant les options par défaut. (par exemple, rm, mv et d’autres commandes).
- Compatibilité en créant des commandes pour les systèmes d'exploitation plus anciens tels que MS-DOS ou d'autres systèmes d'exploitation de type Unix (par exemple, alias del = rm).
J'ai partagé les alias que j'ai utilisés au fil des ans pour réduire le besoin de dactylographie répétitive en ligne de commande. Si vous connaissez et utilisez un autre alias bash / ksh / csh pouvant réduire le typage, partagez ci-dessous dans les commentaires.
Commentaires
Laisser un commentaire