Extremt användbart tips om du använder terminalen (Unite command CD med LS ... och många fler)

Jag är en av dem som använder mycket av tiden terminala (konsol, bash, skal, vad du än vill kalla det), av X- eller Y-skäl måste jag ständigt byta katalog och arbeta med det 

I de allra flesta fall ändras katalogändring (Till exempel: cd / opt /) och också vill jag veta vad som finns i den katalogen, för att veta den andra jag använder ls.

Det vill säga det skulle vara så här:

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

Jag har sagt det många gånger ... Jag är ganska lat, jag gillar att göra minsta möjliga antal steg i terminalen, det är därför jag har uppnått precis vad jag ville efter mycket experiment.

Se följande, vilket är inget annat än att jag går in /välja/ med det enkla kommandot cd / opt /:

Som du kan se, i ett steg (cd / opt /) Jag går in i katalogen och den listar OCKSÅ innehållet i den katalogen, och... om det inte räckte så visar den det för mig med färger 

Här är exemplet på att jag kommer åt /etc/ med cd / etc/:


Färgerna är enkla att förstå:

Ingen färg = Filer
Blå färg = Mappar
Grön färg = Filer med körbehörigheter

Men låt oss gå vidare till det viktigaste ... Hur i helvete kan jag också automatiskt lista den katalog jag har tillgång till med bara cd?

Vårt arkiv .bashrc (finns i vårt hem eller personliga mapp) hjälper oss att göra detta måste vi först deklarera en funktion som vi kommer att kalla CDLS:

funktion cdls {cd "$ 1"; ls –färg;}

Vi sätter denna linje på vardera sidan av vår .bashrc ... här är kommandot att göra det:

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

Du behöver INTE nödvändigtvis göra det med det här kommandot, målet är att filen .bashrc innehåller den här raden, så redigera den här filen med din textredigerare (musmatta, kate, gedit, nano, vi, etc.) och lägg till den.
De sparar ändringen, stänger terminalen som de har öppnat och öppnar en ny.

I den skriver vi följande och trycker på [Stiga på]:

cdls $HOME

Detta borde vara tillräckligt för att komma åt vår personliga mapp i terminalen, och det kommer också att lista dess innehåll (med färger och allt).

Jag menar vad CDLS det gör redan vad vi vill ... nu kan vi bara uppnå detsamma men med cd

För detta lägger vi till i filen .bashrc följande rad:

alias cd='cdls'

Detta kommer att göra när vi skriver cd ... Den åtgärd som vi definierar kommer faktiskt att utföras för CDLS

Jag lämnar kommandot som automatiskt sätter den här föregående raden:

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

Men precis som jag sa tidigare är målet att lägga till den här andra raden i samma fil, du kan använda den textredigerare du väljer för den.

När detta är gjort stänger du terminalen och öppnar en ny ... i den skriver du följande och trycker på [Stiga på]:

cd /etc/

Och bingo, de kommer in / Etc/ och innehållet i denna mapp kommer också att listas, och med färger  (precis som i ett tidigare foto)

Vad är det användbart till? 

För nyfikna som undrar vad betyder den här funktionen? ... jag lämnar den enkla förklaringen:

funktion cdls = Här definierar vi att vi skapar en ny funktion, och den kommer att kallas cdls
cd "$ 1" = Och vad den här funktionen kommer att göra (den kommer att göra varje gång vi ringer, använder eller utför den) är att skapa en cd (enter) mot den första parametern, det vill säga ... - »« cd / home / », den« $ 1 »betyder« vad vi skriver efter cd ", i detta exempel är den första parametern" / home / ".
; = Detta betyder att den ordningen slutar där, eller en åtgärd som ska utföras ... men en funktion kan ha fler åtgärder att göra, och vi kommer att definiera en andra nu.
ls –färg; = Det betyder att förutom alla åtgärder som förklarats tidigare kommer det också att göra ett "ls" där vi finns, och "ls" gör det med färg (–färg).

Det sista ... det smartaste, de kommer att inse att den här logiken (att ta en funktion och konfigurera den för att utföra flera åtgärder) har mycket, mycket potential, till exempel ... om jag vill gå in i en mapp och också radera en annan, det vill säga jag vill komma in /Hem/ och ta bort / opt / temp / funktionen för detta skulle vara:

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

Och att skriva in en terminal asdasd / home / / opt / test / eftersom det kommer att ange den första parametern (/Hem/) och radera den andra (/ opt / temp /).

Hur som helst, detta har verkligen en hel del potential hehe, det är upp till dig att dra nytta av det så mycket du kan.

Om du har några tvivel, frågor, klagomål eller förslag hjälper jag dig gärna, jag är inte ens någon expert men jag gillar åtminstone att hjälpa dig 

hälsningar