4 kasulikku näpunäidet Linuxi mkdir, tar ja kill käsude kohta


Jätkame ülesande täitmist tavapäraselt, kuni saame teada, et seda saab teha palju paremini ka teistmoodi. Meie Linuxi näpunäidete ja trikkide sarja jätkuna olen siin allpool toodud nelja nõuandega, mis aitavad teid mitmel viisil. Siin me läheme!

Kataloogipuu struktuur, nagu allpool soovitatud.

$ cd /home/$USER/Desktop
$ mkdir tecmint
$ mkdir tecmint/etc
$ mkdir tecmint/lib
$ mkdir tecmint/usr
$ mkdir tecmint/bin
$ mkdir tecmint/tmp
$ mkdir tecmint/opt
$ mkdir tecmint/var
$ mkdir tecmint/etc/x1
$ mkdir tecmint/usr/x2
$ mkdir tecmint/usr/x3
$ mkdir tecmint/tmp/Y1
$ mkdir tecmint/tmp/Y2
$ mkdir tecmint/tmp/Y3
$ mkdir tecmint/tmp/Y3/z

Ülaltoodud stsenaariumi saab saavutada lihtsalt allpool asuva 1-liinilise käsu käivitamisega.

$ mkdir -p /home/$USER/Desktop/tecmint/{etc/x1,lib,usr/{x2,x3},bin,tmp/{Y1,Y2,Y3/z},opt,var}

Selle kinnitamiseks võite kasutada puu käsku. Kui seda pole installitud, võite apt või yum paketi "puu".

$ tree tecmint

Saame ülaltoodud viisil luua mis tahes keerukusega kataloogipuu struktuuri. Pange tähele, et see pole midagi muud kui tavaline käsk, vaid see kasutab kataloogide hierarhia loomiseks {} . See võib osutuda väga kasulikuks, kui seda kasutatakse vajadusel ja üldiselt shelliskripti seestpoolt.

ABC
DEF
GHI
JKL
MNO
PQR
STU
VWX
Y
Z

Mida tavaline kasutaja selle stsenaariumi korral teeks?

a. Esmalt loob ta faili, eelistatavalt kasutades käsku touch:

$ touch /home/$USER/Desktop/test

b. Ta kasutab faili avamiseks tekstiredaktorit, milleks võib olla nano, vim või mõni muu redaktor.

$ nano /home/$USER/Desktop/test

c. Seejärel paigutab ta ülaltoodud teksti sellesse faili, salvestab ja väljub.

Nii et sõltumata tema kulutatud ajast vajab ta ülaltoodud stsenaariumi elluviimiseks vähemalt kolme sammu.

Mida teeb tark kogenud Linux-erimees? Ta lihtsalt kirjutab alloleva teksti korraga terminali ja kõik on valmis. Ta ei pea iga toimingut eraldi tegema.

cat << EOF > /home/$USER/Desktop/test
ABC
DEF
GHI
JKL
MNO
PQR
STU
VWX
Y
Z
EOF

Võite kasutada käsku kass, et kontrollida, kas fail ja selle sisu on edukalt loodud.

$ cat /home/avi/Desktop/test

Tavaliselt teeme selle stsenaariumi korral kahte asja.

a. Tõrvapalli kopeerimine/teisaldamine ja selle ekstraheerimine sihtkohas järgmiselt:

$ cp firefox-37.0.2.tar.bz2 /opt/
or
$ mv firefox-37.0.2.tar.bz2 /opt/

b. CD-le/opt/kataloogi.

$ cd /opt/

c. Eemaldage Tarball.

# tar -jxvf firefox-37.0.2.tar.bz2 

Saame seda teha ka vastupidi.

Eemaldame Tarballi seal, kus see asub, ja kopeerime/teisaldame väljavõetud arhiivi soovitud sihtkohta järgmiselt:

$ tar -jxvf firefox-37.0.2.tar.bz2 
$ cp -R firefox/  /opt/
or
$ mv firefox/ /opt/

Mõlemal juhul kulub töö lõpetamiseks kaks või samm. Professionaal saab selle ülesande täita ühe sammuna järgmiselt:

$ tar -jxvf firefox-37.0.2.tar.bz2 -C /opt/

Valik -C muudab tõrva määratud kaustas arhiivi väljavõtmiseks (siin/opt /).

Ei, see ei puuduta valikut (-C), vaid harjumusi. Tehke harjumus kasutada tõrvaga valikut -C. See hõlbustab teie elu. Nüüdsest ärge teisaldage arhiivi ega kopeerige/teisaldage väljavõetud faili, jätke TAR-pall lihtsalt kausta Allalaadimised ja eraldage see kõikjale, kuhu soovite.

Kõige üldisemal moel loetleme kõigist protsessidest kõigepealt käsu ps -A abil ja sisestame selle protsessi/teenuse (näiteks apache2) leidmiseks grepiga lihtsalt järgmiselt:

$ ps -A | grep -i apache2
1006 ?        00:00:00 apache2
 2702 ?        00:00:00 apache2
 2703 ?        00:00:00 apache2
 2704 ?        00:00:00 apache2
 2705 ?        00:00:00 apache2
 2706 ?        00:00:00 apache2
 2707 ?        00:00:00 apache2

Ülaltoodud väljund näitab kõiki praegu töötavaid apache2 protsesse koos nende PID-dega. Seejärel saate neid PID-sid apache2 tapmiseks järgmise käsu abil.

# kill 1006 2702 2703 2704 2705 2706 2707

ja seejärel kontrollige, kas mõni protsess/teenus nimega ‘apache2’ töötab või mitte, näiteks:

$ ps -A | grep -i apache2

Kuid me saame seda teha arusaadavamas vormingus, kasutades utiliite nagu pgrep ja pkill. Protsessi kohta leiate asjakohast teavet lihtsalt pgrepi abil. Oletame, et peate leidma apache2 protsessiteabe, võite lihtsalt teha järgmist:

$ pgrep apache2
15396
15400
15401
15402
15403
15404
15405

Samuti võite protsessi nime panna pidamise vastu käivitades.

$ pgrep -l apache2
15396 apache2
15400 apache2
15401 apache2
15402 apache2
15403 apache2
15404 apache2
15405 apache2

Protsessi tapmine pkilli abil on väga lihtne. Sisestate lihtsalt tapmiseks vajaliku ressursi nime ja olete valmis. Olen kirjutanud pkilli kohta postituse, millele võiksite viidata siin: https://linux-console.net/how-to-kill-a-process-in-linux/.

Protsessi (näiteks apache2) tapmiseks pkilli abil peate tegema ainult järgmist:

# pkill apache2

Alltoodud käsu abil saate kontrollida, kas apache2 on tapetud või mitte.

$ pgrep -l apache2

See tagastab viiba ja ei prindi midagi, see tähendab, et apache2 nimelist protsessi ei toimu.

See on minu jaoks praegu kõik. Kõigist ülalnimetatud punktidest ei piisa, kuid see aitab kindlasti. Me ei taha mitte ainult õpetuste tootmist, et panna teid iga kord midagi uut õppima, vaid tahame näidata ka „Kuidas olla samas kaadris produktiivsem”. Esitage meile oma väärtuslikku tagasisidet allpool toodud kommentaarides. Hoidke ühendust. Jätka kommenteerimist.