Lubhang kapaki-pakinabang na tip kung gagamitin mo ang terminal (Sumali sa utos ng CD sa LS ... at marami pa)

Isa ako sa mga gumagamit ng maraming oras pandulo (console, bash, shell, anumang nais mong tawagan ito), para sa mga kadahilanang X o Y kailangan kong patuloy na baguhin ang mga direktoryo, ginagawa ito 

Sa karamihan ng mga kaso, ang pagbabago ng direktoryo (Por ejemplo: cd / opt /) at gusto ko ring malaman kung ano ang nasa direktoryo na iyon, upang malaman ang pangalawang ito na ginagamit ko ls.

Iyon ay, magiging ganito:

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

Sinabi ko ito ng maraming beses ... Ako ay medyo tamad, nais kong gawin ang hindi bababa sa dami ng mga hakbang sa terminal, kaya't pagkatapos ng maraming eksperimento, nakamit ko lang ang nais ko.

Tingnan ang sumusunod, na kung saan ay walang iba kundi ang pagpasok ko / opt / may simpleng utos cd / opt /:

Tulad ng nakikita mo, sa isang hakbang (cd / opt /) Ipasok ko ang direktoryo at DIN ito ay naglilista ng mga nilalaman ng direktoryo na iyon, at... kung iyon ay hindi sapat, ito ay nagpapakita sa akin ng mga kulay 

Narito ang halimbawa ng pag-access ko / atbp / sa cd / atbp/:


Ang mga kulay ay simpleng maunawaan:

Walang kulay = Mga file
Kulay asul = Mga Folder
Kulay berde = Mga file na may mga pahintulot na magpatupad

Ngunit, magpatuloy tayo sa pangunahing ... Paano ba ang paggamit ng cd lamang na maaari ko ring awtomatikong ilista ang direktoryo na na-access ko?

Ang aming archive .bashrc (na matatagpuan sa aming tahanan o personal na folder) ay tutulong sa atin na gawin ito, kailangan muna nating ideklara ang isang pagpapaandar, na tatawagin natin CDLS:

pag-andar ng cdls {cd "$ 1"; ls –kulay;}

Inilalagay namin ang linyang ito sa magkabilang panig ng aming .bashrc ... narito ang utos na gawin ito:

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

Hindi mo kinakailangang gawin ito sa utos na ito, ang layunin ay ang file .bashrc naglalaman ng linyang ito, kaya i-edit lamang ang file na ito sa iyong ginustong text editor (mousepad, kate, gedit, nano, vi, atbp) at idagdag ito.
Nai-save nila ang pagbabago, isinasara ang terminal na kanilang binuksan at magbubukas ng bago.

Sa loob nito isusulat namin ang sumusunod at pindutin [Ipasok]:

cdls $HOME

Ito ay dapat sapat upang ma-access ang aming personal na folder sa terminal na iyon, at ililista din nito ang nilalaman nito (na may mga kulay at lahat).

Ibig kong sabihin, ano CDLS ginagawa na nito ang gusto natin ... ngayon ay maaari lamang nating makamit ang pareho ngunit sa cd

Para sa mga ito, nagdagdag kami sa file .bashrc ang sumusunod na linya:

alias cd='cdls'

Gagawa ito kapag nagsusulat kami cd ... Ang aksyon na tinukoy namin ay talagang papatayin CDLS

Iniwan ko sa iyo ang utos na awtomatikong maglalagay ng nakaraang linya:

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

Ngunit tulad ng sinabi ko dati, ang layunin ay upang idagdag ang ibang linya sa parehong file, maaari mong gamitin ang text editor na iyong pinili para dito.

Kapag tapos na ito, isara ang terminal at magbukas ng bago ... dito isulat ang sumusunod at pindutin [Ipasok]:

cd /etc/

At bingo, papasok sila / atbp/ at ang mga nilalaman ng folder na ito ay ililista din, at may mga kulay  (tulad ng sa isang nakaraang larawan)

Para saan ito kapaki-pakinabang? 

Para sa mga nagtataka na nagtataka kung ano ang ibig sabihin ng pagpapaandar na ito? ... Iniwan ko sa iyo ang simpleng paliwanag:

pag-andar ng cdls = Dito tinukoy namin na lumilikha kami ng isang bagong pag-andar, at tatawagin itong cdls
cd "$ 1" = At kung ano ang gagawin ng pagpapaandar na ito (gagawin nito tuwing tatawagin, gagamitin o isasagawa ito) ay upang gumawa ng isang cd (ipasok) patungo sa ika-1 na parameter, iyon ay ... - »« cd / home / », ang« Ang ibig sabihin ng $ 1 »« kung ano ang isusulat namin pagkatapos ng cd ", sa halimbawang ito ang ika-1 na parameter ay" / home / ".
; = Nangangahulugan ito na ang pagkakasunud-sunod na iyon ay nagtatapos doon, o pagkilos na naisakatuparan ... ngunit ang isang pagpapaandar ay maaaring magkaroon ng maraming mga pagkilos na dapat gawin, at tutukuyin namin ang isang pangalawa ngayon.
ls –kulay; = Nangangahulugan ito na bilang karagdagan sa anumang pagkilos na idineklara dati, gagawa rin ito ng isang "ls" kung saan tayo matatagpuan, at gagawin ito ng "ls" na may kulay (–kulay).

Huling bagay ... ang pinakamatalino, malalaman nila na ang lohika na ito (pagkuha ng isang pag-andar at pag-configure ito upang magpatupad ng maraming mga aksyon) ay may maraming, maraming potensyal, halimbawa ... kung nais kong magpasok ng isang folder, at magtanggal din ng isa pa, iyon ay, nais kong pumasok / home / at tanggalin din / opt / temp / ang pagpapaandar para dito ay:

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

At pagta-type sa isang terminal asdasd / home / / opt / test / gagawin nito, dahil papasok ito sa unang parameter (/ home /) at tanggalin ang pangalawa (/ opt / temp /).

Gayunpaman, ito ay talagang maraming potensyal hehe, nasa sa iyo na samantalahin ito hangga't makakaya mo.

Kung mayroon kang anumang mga pagdududa, tanong, reklamo o mungkahi, ikalulugod kong tulungan ka, hindi man ako dalubhasa sa malayo ngunit hindi bababa sa gusto kong tumulong 

Regards