4 Linux-da buýruklary mkdir, tar we öldürmek boýunça peýdaly maslahatlar


Bir ýumuşyň başga bir ýoldan has gowy edilip bilinjekdigine göz ýetirýänçäk, adaty bir işi ýerine ýetirýäris. Linux maslahatlarymyz we hileler seriýamyzyň dowamy hökmünde, men size köp ugurda kömek etjek aşakdaky dört maslahat bilen geldim. Ine!

Aşakda görkezilişi ýaly ýetmek üçin katalog agaç gurluşy.

$ 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

Aboveokardaky ssenariýa aşakdaky 1-liner buýrugyny işletmek arkaly ýetip bolýar.

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

Barlamak üçin agaç buýrugyny ulanyp bilersiňiz. Gurulmadyk bolsa, “agaç” bukjasyny ýerleşdirip ýa-da ýumup bilersiňiz.

$ tree tecmint

Aboveokardaky usuly ulanyp, islendik çylşyrymly katalog agaç gurluşyny döredip bileris. Adaty buýrukdan başga zat däldigine, kataloglaryň iýerarhiýasyny döretmek üçin {} ulanýandygyna üns beriň. Zerur bolanda we umuman gabyk skriptiniň içinden ulanylsa, bu gaty peýdaly bolup biler.

ABC
DEF
GHI
JKL
MNO
PQR
STU
VWX
Y
Z

Bu ssenariýada adaty ulanyjy näme ederdi?

a. Ilki bilen faýly döreder, has gowusy sensor buýrugyny ulanyp:

$ touch /home/$USER/Desktop/test

b. Nano, vim ýa-da başga bir redaktor bolup bilýän faýly açmak üçin tekst redaktoryny ulanar.

$ nano /home/$USER/Desktop/test

c. Soňra ýokardaky teksti şu faýla ýerleşdirer, saklar we çykar.

Şonuň üçin näçe wagt alandygyna garamazdan, ýokardaky ssenariýany ýerine ýetirmek üçin azyndan 3 ädim gerek.

Akylly tejribeli Linux-er näme eder? Aşakdaky teksti diňe bir gezeklik terminala ýazar we hemmesi ýerine ýetiriler. Her hereketi aýratyn etmeli däl.

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

Faýlyň we mazmunynyň üstünlikli döredilendigini ýa-da ýokdugyny barlamak üçin pişik buýrugyny ulanyp bilersiňiz.

$ cat /home/avi/Desktop/test

Adatça bu ssenariýada iki zady edýäris.

a. Tar topuny göçüriň/süýşüriň we barmaly ýerinde çykaryň:

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

b. cd/opt/katalog.

$ cd /opt/

c. Tarboly çykaryň.

# tar -jxvf firefox-37.0.2.tar.bz2 

Muny başga ýol bilen edip bileris.

Tarbolyň nirededigini alarys we çykarylan arhiwi gerekli ýere göçüriň/göçüriň:

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

Iki ýagdaýda-da iş iki ýa-da tamamlanmak üçin ädim ätýär. Hünärmen bu meseläni bir ädimde ýerine ýetirip biler:

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

-C opsiýasy görkezilen bukjadaky arhiwi çykarýar (şu ýerde/opt /).

Nook, opsiýa (-C) hakda däl-de, endikler hakda. Tar bilen -C opsiýasyny ulanmagy endik ediniň. Bu siziň durmuşyňyzy ýeňilleşdirer. Mundan beýläk arhiwi göçürmäň ýa-da göçürilen faýly göçürmäň/göçürmäň, diňe TAR-topy ýüklemeler bukjasyna goýuň we islän ýeriňize çykaryň.

Umuman aýdanyňda, ilki bilen ps -A buýrugyny ulanyp, ähli prosesi sanap geçýäris we prosesi/hyzmaty (apache2 diýiň) tapmak üçin grep bilen turba geçirýäris:

$ 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

Aboveokardaky çykyş, häzirki wagtda işleýän Pache programmalary bilen işleýän ähli apache2 amallaryny görkezýär, soňra aşakdaky buýrugyň kömegi bilen bu PID-leri apache2-ni öldürmek üçin ulanyp bilersiňiz.

# kill 1006 2702 2703 2704 2705 2706 2707

soň bolsa apache2 ady bilen haýsydyr bir prosesiň/hyzmatyň işleýändigini ýa-da ýokdugyny barlaň:

$ ps -A | grep -i apache2

Şeýle-de bolsa, pgrep we pkill ýaly kömekçi enjamlary ulanyp has düşnükli formatda edip bileris. Pros hakda degişli maglumatlary diňe pgrep ulanyp tapyp bilersiňiz. Apache2 üçin proses maglumatlary tapmaly diýiň, ýönekeý edip bilersiňiz:

$ pgrep apache2
15396
15400
15401
15402
15403
15404
15405

Şeýle hem, işlemek arkaly pidiň garşysyna proses adyny sanap bilersiňiz.

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

Pkill ulanyp, bir prosesi öldürmek gaty ýönekeý. Öldürmek üçin çeşmäniň adyny ýazýarsyňyz we gutardyňyz. Pkill-de şu ýere ýüzlenmek isleýän bir ýazgy ýazdym: https://linux-console.net/how-to-kill-a-process-in-linux/.

Pkill ulanyp, bir prosesi öldürmek üçin (apache2 diýiň), etmeli zadyňyz:

# pkill apache2

Aşakdaky buýrugy işledip, apache2-iň öldürilendigini ýa-da ýokdugyny barlap bilersiňiz.

$ pgrep -l apache2

Çaltlygy yzyna gaýtaryp berýär we hiç zat çap etmeýär, apache2 ady bilen işleýän proses ýok.

Bu häzirlikçe, menden. Aboveokardaky ara alnyp maslahatlaşylan nokatlaryň hemmesi ýeterlik däl, ýöne hökman kömek eder. Diňe her gezek täze bir zat öwrenmek üçin okuw gollanmalaryny öndürmek bilen çäklenmän, “Şol bir çarçuwada nädip has öndürijilikli bolmalydygyny” görkezmek isleýäris. Aşakdaky teswirlerde gymmatly pikirleriňizi bize beriň. Baglanyşyň. Düşündiriş beriň.