Crea i tuoi comandi Linux usando alias e funzioni della shell bash. Controlla le attività ripetitive, troncare processi lunghi e configurare comandi standard con alternative che usi sempre e che fai fatica a ricordare.
Alias e gli script di shell sono potenti tecniche su sistemi operativi simili a Linux e Unix che ti consentono di affinare la tua esperienza della riga di comando per essere esattamente ciò che desideri. Puoi impostare i tuoi comandi personalizzati in base alle tue esigenze specifiche e per alleviare il peso delle attività ripetitive.
Alias e script di shell fare lo stesso tipo di lavoro. Ti permettono di stabilire (e nome) un insieme di funzioni di shell bash che possono quindi essere chiamate con qualsiasi nome tu abbia dato. Digitare il nome è più facile e conveniente che dover digitare tutti i passaggi o i comandi ogni volta che si desidera utilizzarli.
La differenza tra un alias e uno script è di complessità e scala. Gli script sono migliori per salvare frammenti di codice più lunghi ed elaborati. Gli alias sono perfetti per mantenere i set di comandi più brevi e concisi.
Alias predefiniti
Alcuni alias sono predefiniti per te. Per vedere l'elenco degli alias definiti sul tuo sistema, usa il comando alias senza parametri:
alias
Questi sono gli alias definiti sulla macchina di test di Ubuntu su cui è stato studiato questo post. Se avessi definito degli alias personalizzati, anche questi comparirebbero in questa lista.
In cima alla lista, c'è un alias dall'aspetto difficile chiamato alert
. Ci arriveremo tra un momento. Ci sono molti alias diversi per ls
comando, e c'è un gruppo di alias che forniscono output a colori al grep
comando famiglia. Come esempio, con questi alias definiti, ogni volta che scrivo:
grep
Il sistema lo interpreterà come:
grep --color=auto
Questo mostra un punto importante con gli alias. Possono avere lo stesso nome dei comandi esistenti. Possono persino contenere il comando originale dentro di sé.
Ecco la definizione di grep
alias.
alias grep = 'grep --color = auto'
- il
alias
Il comando è usato per impostare un alias. - Il nome dell'alias è riportato di seguito. In questo esempio è
grep
. - Il segno di uguale collega il Nome da alias a corpo alias. Per tutti gli alias, tranne quelli molto semplici, il corpo dell'alias è racchiuso tra virgolette singole
'
. - Il corpo dell'alias è la sezione che viene eseguita quando l'alias viene utilizzato sulla riga di comando.
Il corpo di questo alias chiama semplicemente grep
comando con il --color=auto
opzione.
Avviso di alias
Come breve a parte, e così sai cosa fa, il alert
alias viene utilizzato per avvisarti quando un comando è terminato. Indica anche se il comando è stato completato con successo o meno. Fornisce un avviso di sistema grafico nella parte superiore dello schermo.
Qui c'è un semplice esempio. il sleep
Il comando resterà inattivo per cinque secondi. alert
allora si chiamerà alias. L'alias verifica la soluzione del comando precedente. Estrai l'ultimo comando dal file di archivio. Determina se il comando è stato completato con successo o meno. Quindi presenta i risultati in un avviso di sistema.
Se il comando è stato completato come previsto, l'icona di avviso di sistema è una piccola finestra di terminale. Se il comando ha restituito un codice di errore, l'icona di avviso di sistema è un'icona di errore rossa.
dormire 5; mettere in guardia
Dopo cinque secondi, vediamo questo avviso di sistema:
L'icona è una piccola finestra di terminale, il che significa che è andato tutto bene. Riproviamo con un comando che sappiamo fallirà:
Destinato a fallire; mettere in guardia
Il nostro avviso di sistema ora ha un'icona di errore.
Definizione di alias banale
Come abbiamo visto, per impostare un alias, noi usiamo il alias
comando.
Creiamo uno pseudonimo per lui clear
comando. Il nostro alias si chiamerà cls
e chiamerà clear
comando.
La nostra definizione di alias è così banale che non giustifica l'essere tra virgolette singole. Se il corpo dell'alias è più complesso di questo, o se contiene spazi, racchiudilo tra virgolette singole. Definiremo l'alias, utilizzo ls
per inserire dell'output nella finestra del terminale e quindi utilizzare il nostro nuovo alias cls
per pulire lo schermo.
alias cls=clear
ls -l
cl
Lo schermo viene cancellato. Successo, anche di breve durata. L'alias sopravviverà solo finché questa finestra del terminale rimarrà aperta. Una volta chiusa la finestra, l'alias scomparirà.
Quindi, ¿cómo hacemos que nuestros alias sean permanentes?
Il file .bashrc e gli alias
Ti starai chiedendo dove sono definiti gli alias preconfezionati. está en el archivo “.bashrc” nella tua cartella Inizio. Questo file viene letto ei comandi in esso contenuti vengono eseguiti ogni volta che si avvia una shell interattiva.. In altre parole, quando apri una finestra di terminale.
Escriba el siguiente comando en su carpeta de inicio para ver el contenido del archivo “.bashrc” con evidenziazione della sintassi.
gedit .bashrc
Questo avvierà il gedit
editor con el archivo “.bashrc” caricato su di esso.
Le aree evidenziate mostrano due aree in cui sono definiti gli alias.
Scorrendo il documento, verranno rivelate altre due sezioni associate agli alias:
Il primo di questi è la definizione di alert
alias. Il secondo è un if
dichiarazione. Si traduce come, “si el archivo” .bash_aliases “esiste, léalo”.
Se hai solo pochi alias che vuoi impostare, puoi metterli nel tuo file ".bashrc".. Posizionali sotto la sezione contenente il ls
alias.
Se hai intenzione di creare molti alias, o semplicemente ti piace l'idea di avere i tuoi alias incapsulati all'interno del proprio file, puoi definirli nel tuo file ".bash_aliases".. Una ventaja de crearlos en su archivo “.bash_aliases” es que no puede cambiar accidentalmente ninguna de las configuraciones en el archivo “.bashrc”. Un altro vantaggio è che i tuoi alias possono essere facilmente copiati su nuovi sistemi perché sono totalmente separati dal file ".bashrc"..
Memorizzazione degli alias nel file .bash_aliases
Il file “.bash_aliases” Non esisterà finché non lo crei. Puoi creare il file con questo comando:
tocca .bash_alias
Modifichiamo il file e aggiungiamo alcuni alias. Este comando abrirá el archivo “.bash_aliases” a gedit
editore.
gedit .bash_alias
Abbiamo aggiunto tre alias. Il primo è nostro cls
alias che abbiamo usato in precedenza. Viene chiamato il prossimo h.
ed è un modo abbreviato di chiamare history
comando.
Viene chiamato il terzo alias ftc
. Questo significa “recuento de tipos de archivo”.
Questo alias è più complesso, quindi è racchiuso tra virgolette singole. quindi è racchiuso tra virgolette singole. quindi è racchiuso tra virgolette singole, quindi è racchiuso tra virgolette singole.
IMPARENTATO: Come usare Pipes su Linux
quindi è racchiuso tra virgolette singole “.bash_aliases”, quindi è racchiuso tra virgolette singole. quindi è racchiuso tra virgolette singole. quindi è racchiuso tra virgolette singole. quindi è racchiuso tra virgolette singole.
quindi è racchiuso tra virgolette singole. .
per quindi è racchiuso tra virgolette singole quindi è racchiuso tra virgolette singole. quindi è racchiuso tra virgolette singole “.quindi è racchiuso tra virgolette singole” quindi è racchiuso tra virgolette singole “.bashrc”, quindi è racchiuso tra virgolette singole “.bashrc”. De aquel modo podemos chequear que el archivo “.bash_alias” se llama desde “.bashrc” y que nuestros alias están vivos y en buen estado.
I comandi che utilizziamo lo sono:
gedit .bash_alias
Para editar el archivo “.quindi è racchiuso tra virgolette singole”.
. .bashrc
Esto leerá y ejecutará los comandos dentro de “.bashrc”, que llamará “.quindi è racchiuso tra virgolette singole”.
ftc
Questo chiamerà il ftc
alias.
Il nostro alias risponde, lo que significa que Bash ha leído tanto en “.bashrc” come in “.bash_aliases”, e i nostri nuovi alias sono ora attivi.
Ahora puede continuar y agregar nuevos alias al archivo “.bash_aliases” quando ti vengono in mente. Se ti ritrovi a fare le cose più di una o due volte, considera la possibilità di creare un alias per questo.
eliminare gli alias
C'è un comando per rimuovi gli alias in modo che BAsh non li riconosca o non risponda a loro. Francamente rinfrescante, il comando si chiama unalias
.
Per usarlo, dai il nome dell'alias che vuoi che Bash dimentichi. Per far dimenticare a bash il nostro ftc
alias, utilizzo unalias
come questo:
unalias ftc
Puoi usare unalias
per rimuovere gli alias che hai definito e uno qualsiasi degli alias predefiniti.
Per rimuovere tutti gli alias dal tuo sistema, Utilizzare il -a
(Tutto quanto) opzione:
unalias -a
Nonostante questo, La perdita di memoria di Bash non sarà permanente. La prossima volta che apro una finestra di terminale, los alias “olvidados” torneranno. Per rimuoverli davvero, debe eliminarlos de sus archivos “.bashrc” e “.quindi è racchiuso tra virgolette singole”.
Se pensi che ti piacerebbe riaverli indietro, non rimuoverli dal file ".bashrc".. Anziché, commenti aggiungendo un hash #
all'inizio di ciascuno alias
linea. Para que su archivo “.bash_alias” no sea efectivo, rinominalo. Si su archivo “.bashrc” no puede verlo, non lo leggerò. Annullare questi passaggi per reimpostare i tuoi alias è una questione banale.
funzioni di shell
Gli pseudonimi di Lika, Le funzioni della shell Bash possono essere impostate all'interno del file ".bashrc"., ma spesso è meglio inserirli nel proprio file di definizioni. Ti chiameremo “.bash_functions”, siguiendo la convención utilizada para el archivo “.bash_aliases”.
Eso significa que debemos decirle al archivo “.bashrc” que lea nuestras definiciones. Podemos copiar y modificar el fragmento de código que se lee en el archivo “.bash_aliases”. Lancio gedit
y cargue el archivo “.bashrc” con questo comando:
gedit .bashrc
È necessario aggiungere la sezione evidenziata mostrata di seguito.
È possibile evidenziare la sezione degli alias e premere Ctrl+C
e poi spostati dove vuoi la nuova sezione e premi Ctrl+V
per incollare una copia del testo. Dopo, todo lo que necesita hacer es cambiar los dos lugares donde dice “.bash_aliases” un “.bash_functions”.
Possiamo salvare quelle modifiche e chiudere gedit
.
Ahora vamos a crear y editar el archivo “.bash_functions” y poner una definición de función en él.
tocca .bash_functions
gedit .bash_functions
Esto abrirá el archivo “.bash_functions” svuotare gedit
.
Aggiungiamo una semplice funzione chiamata up
. up
prenderà un singolo parametro della riga di comando, cos'è una cifra. up
poi chiamerò cd ..
così tante volte. Quindi, se hai usato il comando
su 2
up
chiamerebbe cd ..
due volte e salirebbe di due livelli nell'albero delle directory.
Esistono diverse alternative per impostare una funzione. eccone uno:
funzione su() {
La parola function
è facoltativo. Se sei un tradizionalista, usalo, se non ti preoccupi di scriverlo, lascialo fuori.
Ecco tutta la nostra funzione in gedit
:
funzione su() {
Questo segna l'inizio della nostra definizione di funzione, e dai un nome alla funzione up
.
livelli=$1
Questo crea una variabile chiamata levels
e impostalo al valore del primo parametro. Questo parametro sarà una cifra fornita dall'utente quando si chiama la funzione. il $1
significa “primer parámetro de línea de comando”.
mentre [ "$livelli" -gt "0" ]; fare
Quindi entriamo in un ciclo. Esto se traduce como “mentre il valore di levels
è maggiore di zero, mentre il valore di “.
All'interno del corpo del ciclo, abbiamo due comandi. Figlio:
cd ..
Sali di un livello nell'albero delle directory.
livelli=$(($livelli - 1))
Indossare levels
a un nuovo valore, che è uno in meno del suo valore attuale.
Poi torniamo all'inizio del ciclo, mentre il valore di levels
mentre il valore di. e levels
è maggiore di zero, mentre il valore di. mentre il valore di, mentre il valore di done
dichiarazione, mentre il valore di.
mentre il valore di gedit
.
mentre il valore di “.bashrc” mentre il valore di “.bash_functions”.
. .bashrc
mentre il valore di up
mentre il valore di “superiore” mentre il valore di.
mentre il valore di
su 2
La funzione funziona. Abbiamo spostato due livelli di directory più in alto nell'albero.
Tieni traccia del ragazzo
Quando crei un insieme di alias e una libreria di funzioni, può essere difficile ricordare se un particolare comando è un alias o una funzione. Puoi usare il type
comando per ricordarti. La cosa buona qui è che puoi anche vedere la definizione.
Usiamo type
nel nostro ftc
alias e il nostro up
funzione.
digita ftc
digita
Otteniamo un promemoria molto utile di che tipo di comando è ciascuno, insieme alle loro definizioni.
Inizia a raccogliere
mentre il valore di. Possono abbreviare i tuoi script e permetterti di incorporare le alternative che usi sempre con i comandi standard.
Ogni volta che vedi una funzione intelligente o utile, puoi adattarlo e personalizzarlo, y después agregarla a sus archivos “.bash_aliases” o “.bash_functions”.
impostaTimeout(funzione(){
!funzione(F,B,e,v,n,T,S)
{Se(f.fbq)Restituzione;n=f.fbq=funzione(){n.callMethod?
n.callMethod.apply(n,argomenti):n.queue.push(argomenti)};
Se(!f._fbq)f._fbq = n;n.push=n;n.loaded=!0;n.version='2.0′;
n.coda=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(T,S) } (window, documento,'copione',
'https://connect.facebook.net/en_US/fbevents.js');
fbq('dentro', '335401813750447');
fbq('traccia', 'Visualizzazione della pagina');
},3000);