Suggerimento estremamente utile se si utilizza il terminale (comando Join CD con LS ... e molti altri)

Sono uno di quelli che impiega molto tempo terminale (console, bash, shell, come vuoi chiamarlo), per motivi X o Y devo cambiare continuamente directory, lavorandoci sopra 

Nella stragrande maggioranza dei casi, il cambio di directory (Ad esempio: cd / opt /) e voglio anche sapere cosa c'è in quella directory, per sapere questo secondo che uso ls.

Cioè, sarebbe così:

kzkggaara @ geass: ~ $ cd / opt /
kzkggaara @ geass: / opt / $
kzkggaara @ geass: / opt / $ ls
Nessus

L'ho detto molte volte ... sono abbastanza pigro, mi piace fare il minor numero di passaggi nel terminale, ecco perché dopo molti esperimenti ho ottenuto proprio quello che volevo.

Vedi quanto segue, che non è altro che il mio inserimento / optare / con il semplice comando cd / opt /:

Come puoi vedere, in un passaggio (cd / opt /) Entro nella directory e INOLTRE mi elenca il contenuto di quella directory, e... se ciò non bastasse, me lo mostra con i colori 

Ecco l'esempio di me che accedo /eccetera/ con cd / ecc/:


I colori sono semplici da capire:

Incolore = File
Colore blu = Cartelle
Colore verde = File con autorizzazioni di esecuzione

Ma passiamo al principale ... Come diavolo posso usare anche solo cd per elencare automaticamente la directory a cui accedo?

Il nostro archivio .bashrc (che si trova nella nostra cartella home o personale) ci aiuterà a farlo, dobbiamo prima dichiarare una funzione, che chiameremo cdl:

funzione cdls {cd "$ 1"; ls –color;}

Mettiamo questa linea su entrambi i lati del nostro file .bashrc ... ecco il comando per farlo:

echo "" >> $HOME/.bashrc && echo "function cdls { cd "$1"; ls --color;}" >> $HOME/.bashrc

NON devi necessariamente farlo con questo comando, l'obiettivo è che il file .bashrc contiene questa riga, quindi modifica questo file con il tuo editor di testo preferito (tappetino per mouse, kate, gedit, nano, vi, ecc) e aggiungilo.
Salvano la modifica, chiudono il terminale che hanno aperto e ne aprono uno nuovo.

In esso scriveremo quanto segue e premeremo [Accedere]:

cdls $HOME

Questo dovrebbe essere sufficiente per accedere alla nostra cartella personale in quel terminale e ne elencherà anche il contenuto (con i colori e tutto il resto).

Voglio dire, cosa cdl fa già quello che vogliamo ... ora possiamo solo ottenere lo stesso, ma con cd

Per questo, aggiungiamo nel file .bashrc la riga seguente:

alias cd='cdls'

Questo lo farà quando scriviamo cd … L'azione che definiamo verrà effettivamente eseguita per cdl

Vi lascio il comando che inserirà automaticamente questa riga precedente:

echo "" >> $HOME/.bashrc && echo "alias cd='cdls'" >> $HOME/.bashrc

Ma proprio come ho detto prima, l'obiettivo è aggiungere quest'altra riga allo stesso file, puoi usare l'editor di testo di tua scelta per questo.

Fatto ciò, chiudi il terminale e aprine uno nuovo ... in esso scrivi quanto segue e premi [Accedere]:

cd /etc/

E il bingo, entreranno / Etc/ e verrà elencato anche il contenuto di questa cartella, e con i colori  (proprio come in una foto precedente)

A cosa serve? 

Per i curiosi che si chiedono cosa significa questa funzione? ... vi lascio la semplice spiegazione:

funzione cdls = Qui definiamo che stiamo creando una nuova funzione e sarà chiamata cdls
cd "$ 1" = E ciò che questa funzione farà (farà ogni volta che la chiamiamo, la usiamo o la eseguiamo) è fare un cd (invio) verso il 1 ° parametro, cioè ... - »« cd / home / », il« $ 1 »significa« quello che scriviamo dopo cd ", in questo esempio il primo parametro è" / home / ".
; = Questo significa che quell'ordine finisce qui, o azione da eseguire ... ma una funzione può avere più azioni da fare, e ora ne definiremo una seconda.
ls –colore; = Significa che oltre a qualsiasi azione dichiarata prima, creerà anche una "ls" dove ci troviamo, e la "ls" lo farà con color (–color).

Ultima cosa ... i più intelligenti, si renderanno conto che questa logica (prendere una funzione e configurarla per eseguire più azioni) ha molto, molto potenziale, per esempio ... se voglio entrare in una cartella, e anche eliminare un altro, cioè, voglio entrare in /casa/ e anche eliminare / opt / temp / la funzione per questo sarebbe:

function asdasd { cd "$1"; rm -Rv "$2"; }

E digitando in un terminale asdasd / home / / opt / test / lo sarebbe, perché entrerà nel 1 ° parametro (/casa/) ed eliminare il secondo (/ opt / temp /).

Ad ogni modo, questo ha davvero un SACCO di potenziale hehe, sta a te approfittarne il più possibile.

Se hai dubbi, domande, reclami o suggerimenti sarò felice di aiutarti, non sono nemmeno lontanamente un esperto ma almeno mi piace aiutare 

saluti