Introduzione

Ti capita spesso di digitare un comando lungo nella riga di comando o di cercare nella cronologia bash un comando precedentemente digitato? Se la tua risposta a una di queste domande è sì, allora troverai utili gli alias bash. Gli alias Bash consentono di impostare un comando di scelta rapida memorabile per un comando più lungo.

Gli alias di Bash sono essenzialmente scorciatoie che possono risolvere il problema di dover ricordare comandi lunghi ed eliminare una grande quantità di lavoro sulla riga di comando. Ad esempio, è possibile impostare l'alias tgz come scorciatoia per il comando tar -xvfz.

Questo articolo spiega come creare alias bash in modo da poter essere più produttivi sulla riga di comando.

Creazione di alias Bash

La creazione di alias in bash è molto semplice. La sintassi è la seguente:

alias alias_name="command_to_run"

Per creare un nuovo alias bash, digita la parola chiave alias. Quindi dichiarare il nome alias seguito da un segno uguale = e dal comando che si desidera eseguire quando si digita l'alias. Il comando deve essere racchiuso tra virgolette e senza spaziatura attorno al segno di uguale. Ogni alias deve essere dichiarato su una nuova riga.

Il comando ls è probabilmente uno dei comandi più utilizzati nella riga di comando di Linux. Di solito uso questo comando con l'opzione -la per elencare tutti i file e le directory, inclusi quelli nascosti in un lungo elenco.

Creiamo un semplice alias bash chiamato ll che sarà una scorciatoia per il comando ls -la . Per fare ciò, apri una finestra del terminale e digita:

alias ll="ls -la"

Ora se digiti la sulla console il comando ll otterrai lo stesso output che digiterai ls -la.

L' alias ll  sarà disponibile solo nella sessione di shell corrente. Se si esce dalla sessione o si apre una nuova sessione da un altro terminale, l'alias non sarà disponibile.

Per rendere persistente l'alias è necessario dichiararlo nel file ~/.bash_profile o ~/.bashrc.  

Apri il ~/.bashrc nel tuo editor di testo :

nano ~/.bashrc

Aggiungere i propri alias:

# Aliases
# alias alias_name="command_to_run"

# Long format list
alias ll="ls -la"

# Print my public IP
alias pubip='curl ipinfo.io/ip'

Dovresti nominare i tuoi alias in un modo che sia facile da ricordare. Si consiglia inoltre di aggiungere un commento per riferimento futuro.

Una volta fatto, salva e chiudi il file. Rendi disponibili gli alias nella sessione corrente digitando:

source ~/.bash_profile

Come puoi vedere, la creazione di semplici alias bash è rapida e molto semplice.

Creazione di alias Bash con argomenti (funzioni Bash)

A volte potrebbe essere necessario creare un alias che accetta uno o più argomenti, ecco dove le funzioni bash sono utili.

La sintassi per creare una funzione bash è molto semplice. Possono essere dichiarati in due diversi formati:

function_name () {
  [commands]
}

Oppure:

function function_name {
  [commands]
}

Per passare un numero qualsiasi di argomenti alla funzione bash, inseriscili subito dopo il nome della funzione, separati da uno spazio. I parametri passati sono $1, $2, $3 , ecc, corrispondente alla posizione del parametro dopo il nome della funzione. La variabile $0 è riservata per il nome della funzione.

Creiamo una semplice funzione bash che creerà una directory e poi si sposterà in essa:

mkcd ()
{
  mkdir -p -- "$1" && cd -P -- "$1"
}

Come per gli alias, aggiungi la funzione al tuo file ~/.bashrc ed esegui il comando source ~/.bash_profile per ricaricare il file:

source ~/.bash_profile

Ora invece di utilizzare mkdir creare una nuova directory e il comando cd spostarsi in quella directory , puoi semplicemente digitare:

mkcd nuova_cartella

Alcuni chiarimenti sulla sintassi utilizzata:

  • -- - Si assicura che non si passi accidentalmente un argomento in più al comando. Ad esempio, se si tenta di creare una directory che inizia con - (trattino) senza utilizzare -- il nome della directory, verrà interpretato come argomento del comando.
  • && - Assicura che il secondo comando venga eseguito solo se il primo comando ha esito positivo.

Conclusione

Ormai dovresti avere una buona conoscenza di come creare alias e funzioni bash che ti aiuteranno ad utilizzare il terminale.