Afficher les arguments d'un script

for arg in "$@"; do
    echo "$arg"
done

Redéfinir les arguments d'un script

set -- newarg1 newarg2 newarg3

Rediriger la sortie d'un script

Uniquement la sortie standard

SCRIPT="$(basename "$0")"
exec > "${HOME}/${SCRIPT}.log"

La sortie standard et la sortie d'erreur

SCRIPT="$(basename "$0")"
exec > "$HOME/${SCRIPT}.log" 2>&1

ou

exec > "${HOME}/${SCRIPT}.log"
exec 2>&1

Lister les fonctions définies

Avec leur code source

declare -f

Sans leur code source

declare -F

Exporter plusieurs variables en une seule fois

export EDITOR VAGRANT_HOME

Ajouter sudo à une commande

apt-get update
E: Impossible d'ouvrir le fichier verrou /var/lib/apt/lists/lock - open (13: Permission non accordée)
E: Impossible de verrouiller le répertoire /var/lib/apt/lists/
E: Impossible d'ouvrir le fichier verrou /var/lib/dpkg/lock - open (13: Permission non accordée)
E: Impossible de verrouiller le répertoire d'administration (/var/lib/dpkg/). Avez-vous les privilèges du superutilisateur ?
sudo !!
sudo apt-get update
Ign http://dl.google.com stable InRelease
Ign http://dl.google.com stable InRelease                             
Atteint http://dl.google.com stable Release.gpg                            
Atteint http://dl.google.com stable Release.gpg                             
Réception de : 1 http://security.debian.org jessie/updates InRelease [44,9 kB]                
Atteint http://dl.google.com stable Release                                                    
Atteint http://dl.google.com stable Release                                                    
Ign http://httpredir.debian.org jessie InRelease                                               
Atteint http://dl.google.com stable/main amd64 Packages
...