Njira 5 Zamakono Zopangira Zida Zamzere Zakale za Linux

Pogwiritsa ntchito njira zina zamakono limodzi ndi zida zakale zamalangizo, mutha kusangalala kwambiri komanso kukulitsa zokolola zanu.

Njira 5 Zamakono Zopangira Zida Zamzere Zakale za Linux

Pantchito yathu ya tsiku ndi tsiku pa Linux/Unix, timagwiritsa ntchito zida zambiri zamalamulo - mwachitsanzo, du kuyang'anira kugwiritsa ntchito disk ndi zida zamakina. Zina mwa zidazi zakhalapo kwa nthawi yayitali. Mwachitsanzo, pamwamba adawonekera mu 1984, ndipo kutulutsidwa koyamba kwa du kunayamba mu 1971.

Kwa zaka zambiri, zidazi zakhala zikugwiritsidwa ntchito masiku ano komanso kutumizidwa ku machitidwe osiyanasiyana, koma kawirikawiri sanapite kutali ndi matembenuzidwe awo oyambirira, maonekedwe awo ndi kugwiritsidwa ntchito kwawo sikunasinthe kwambiri.

Izi ndi zida zazikulu zomwe olamulira ambiri amafunikira. Komabe, anthu ammudzi apanga zida zina zomwe zimapereka zowonjezera. Ena a iwo amangokhala ndi mawonekedwe amakono, okongola, pomwe ena amathandizira kwambiri. M'kumasuliraku, tikambirana za njira zisanu zosinthira zida zamtundu wa Linux.

1. ncdu vs du

Kugwiritsa Ntchito Ma disk a Nurses (ncdu) ndizofanana ndi du, koma ndi mawonekedwe olumikizirana otengera laibulale ya matemberero. ncdu ikuwonetsa dongosolo lachikwatu lomwe limatenga malo ambiri a disk.

ncdu amasanthula diski kenako ndikuwonetsa zotsatira zosankhidwa ndi zolemba kapena mafayilo omwe amagwiritsidwa ntchito pafupipafupi, mwachitsanzo:

ncdu 1.14.2 ~ Use the arrow keys to navigate, press ? for help
--- /home/rgerardi ------------------------------------------------------------
   96.7 GiB [##########] /libvirt
   33.9 GiB [###       ] /.crc
    7.0 GiB [          ] /Projects
.   4.7 GiB [          ] /Downloads
.   3.9 GiB [          ] /.local
    2.5 GiB [          ] /.minishift
    2.4 GiB [          ] /.vagrant.d
.   1.9 GiB [          ] /.config
.   1.8 GiB [          ] /.cache
    1.7 GiB [          ] /Videos
    1.1 GiB [          ] /go
  692.6 MiB [          ] /Documents
. 591.5 MiB [          ] /tmp
  139.2 MiB [          ] /.var
  104.4 MiB [          ] /.oh-my-zsh
   82.0 MiB [          ] /scripts
   55.8 MiB [          ] /.mozilla
   54.6 MiB [          ] /.kube
   41.8 MiB [          ] /.vim
   31.5 MiB [          ] /.ansible
   31.3 MiB [          ] /.gem
   26.5 MiB [          ] /.VIM_UNDO_FILES
   15.3 MiB [          ] /Personal
    2.6 MiB [          ]  .ansible_module_generated
    1.4 MiB [          ] /backgrounds
  944.0 KiB [          ] /Pictures
  644.0 KiB [          ]  .zsh_history
  536.0 KiB [          ] /.ansible_async
 Total disk usage: 159.4 GiB  Apparent size: 280.8 GiB  Items: 561540

Mutha kuyang'ana zolembazo pogwiritsa ntchito makiyi a mivi. Mukasindikiza Enter, ncdu iwonetsa zomwe zili m'ndandanda yosankhidwa:

--- /home/rgerardi/libvirt ----------------------------------------------------
                         /..
   91.3 GiB [##########] /images
    5.3 GiB [          ] /media

Mutha kugwiritsa ntchito chida ichi, mwachitsanzo, kudziwa mafayilo omwe akutenga malo ambiri a disk. Mutha kupita ku chikwatu cham'mbuyo podina batani lakumanzere. Ndi ncdu mutha kufufuta mafayilo podina batani la d. Imapempha chitsimikiziro musanachotse. Ngati mukufuna kuletsa kufufuta kuti mupewe kutaya mwangozi mafayilo ofunika, gwiritsani ntchito -r njira kuti mutsegule njira yowerengera yokha: ncdu -r.

ncdu imapezeka pamapulatifomu ambiri a Linux ndi magawo. Mwachitsanzo, mutha kugwiritsa ntchito dnf kuyiyika pa Fedora mwachindunji kuchokera kumalo osungira ovomerezeka:

$ sudo dnf install ncdu

2. htop vs pamwamba

Pamwamba ndiwowonera wogwiritsa ntchito wofanana ndi pamwamba, koma m'bokosilo amapereka mawonekedwe abwino a ogwiritsa ntchito. Mwachikhazikitso, htop imawonetsa chidziwitso chofanana ndi pamwamba, koma m'njira yowoneka bwino komanso yokongola.

Mwachikhazikitso htop ikuwoneka motere:

Njira 5 Zamakono Zopangira Zida Zamzere Zakale za Linux
Mosiyana ndi pamwamba:

Njira 5 Zamakono Zopangira Zida Zamzere Zakale za Linux
Kuphatikiza apo, htop ikuwonetsa mwachidule zambiri za dongosolo pamwamba, ndi gulu loyendetsa malamulo pogwiritsa ntchito makiyi ogwira ntchito pansi. Mutha kuyisintha ndikukanikiza F2 kuti mutsegule mawonekedwe. Mu Zochunira, mutha kusintha mitundu, kuwonjezera kapena kuchotsa ma metrics, kapena kusintha mawonekedwe owonetsera mwachidule.

Ngakhale mutha kukwanilitsa kugwiritsidwa ntchito kofananako posintha zosintha zaposachedwa kwambiri, htop imapereka masinthidwe osavuta, omwe amapangitsa kuti ikhale yothandiza komanso yosavuta kugwiritsa ntchito.

3. tldr vs munthu

Chida cha mzere wa tldr chimawonetsa chidziwitso chosavuta chokhudza malamulo, makamaka zitsanzo. Idapangidwa ndi anthu ammudzi tldr masamba polojekiti.

Ndizofunikira kudziwa kuti tldr sikulowa m'malo mwa munthu. Akadali chida chovomerezeka komanso chokwanira kwambiri chotulutsa masamba amunthu. Komabe, nthawi zina munthu amakhala woperewera. Pamene simukusowa zambiri za lamulo, mukungoyesa kukumbukira ntchito zake zoyambira. Mwachitsanzo, tsamba la munthu la curl command lili ndi mizere pafupifupi 3000. Tsamba la tldr la curl ndi mizere 40 kutalika. Chigawo chake chikuwoneka motere:


$ tldr curl

# curl
  Transfers data from or to a server.
  Supports most protocols, including HTTP, FTP, and POP3.
  More information: <https://curl.haxx.se>.

- Download the contents of an URL to a file:

  curl http://example.com -o filename

- Download a file, saving the output under the filename indicated by the URL:

  curl -O http://example.com/filename

- Download a file, following [L]ocation redirects, and automatically [C]ontinuing (resuming) a previous file transfer:

  curl -O -L -C - http://example.com/filename

- Send form-encoded data (POST request of type `application/x-www-form-urlencoded`):

  curl -d 'name=bob' http://example.com/form                                                                                            
- Send a request with an extra header, using a custom HTTP method:

  curl -H 'X-My-Header: 123' -X PUT http://example.com                                                                                  
- Send data in JSON format, specifying the appropriate content-type header:

  curl -d '{"name":"bob"}' -H 'Content-Type: application/json' http://example.com/users/1234

... TRUNCATED OUTPUT

TLDR amatanthauza β€œkutalika; sanawerenge": ndiko kuti, mawu ena sananyalanyazidwe chifukwa cha mawu ake ochulukirapo. Dzinalo ndiloyenera chida ichi chifukwa masamba amunthu, ngakhale ali othandiza, nthawi zina amatha kukhala aatali kwambiri.

Kwa Fedora, tldr inalembedwa mu Python. Mutha kuyiyika pogwiritsa ntchito dnf manager. Kawirikawiri, chida chimafuna intaneti kuti igwire ntchito. Koma kasitomala wa Python wa Fedora amalola masambawa kuti atsitsidwe ndikusungidwa kuti asapezeke pa intaneti.

4.jq vs sed/grep

jq ndi purosesa ya JSON ya mzere wolamula. Ndizofanana ndi sed kapena grep, koma zidapangidwa kuti zizigwira ntchito ndi data ya JSON. Ngati ndinu wopanga mapulogalamu kapena woyang'anira dongosolo yemwe amagwiritsa ntchito JSON pa ntchito za tsiku ndi tsiku, ichi ndi chida chanu.

Ubwino waukulu wa jq pazida zosinthira zolemba monga grep ndi sed ndikuti imamvetsetsa kapangidwe ka data ka JSON, kukulolani kuti mupange mafunso ovuta m'mawu amodzi.

Mwachitsanzo, mukuyesera kupeza mayina a zotengera mufayilo iyi ya JSON:

{
  "apiVersion": "v1",
  "kind": "Pod",
  "metadata": {
    "labels": {
      "app": "myapp"
    },
    "name": "myapp",
    "namespace": "project1"
  },
  "spec": {
    "containers": [
      {
        "command": [
          "sleep",
          "3000"
        ],
        "image": "busybox",
        "imagePullPolicy": "IfNotPresent",
        "name": "busybox"
      },
      {
        "name": "nginx",
        "image": "nginx",
        "resources": {},
        "imagePullPolicy": "IfNotPresent"
      }
    ],
    "restartPolicy": "Never"
  }
}

Thamangani grep kuti mupeze dzina la chingwe:

$ grep name k8s-pod.json
        "name": "myapp",
        "namespace": "project1"
                "name": "busybox"
                "name": "nginx",

grep adabweza mizere yonse yomwe ili ndi dzina la mawu. Mutha kuwonjezera zina zingapo ku grep kuti muchepetse, ndikugwiritsa ntchito kusintha kwanthawi zonse kuti mupeze mayina a chidebecho.

Kuti mupeze zotsatira zomwezo pogwiritsa ntchito jq, ingolembani:

$ jq '.spec.containers[].name' k8s-pod.json
"busybox"
"nginx"

Lamuloli likupatsani mayina a zotengera zonse ziwiri. Ngati mukuyang'ana dzina la chidebe chachiwiri chokha, yonjezerani mndandanda wa zinthu zomwe zikugwirizana ndi mawuwa:

$ jq '.spec.containers[1].name' k8s-pod.json
"nginx"

Popeza jq amadziwa za dongosolo la deta, imapanga zotsatira zomwezo ngakhale mawonekedwe a fayilo asintha pang'ono. grep ndi sed sizingagwire ntchito bwino pakadali pano.

jq ili ndi ntchito zambiri, koma nkhani ina ikufunika kuti iwafotokozere. Kuti mudziwe zambiri chonde lemberani tsamba la polojekiti jq kapena tldr.

5. fd vs kupeza

fd ndi njira yophweka kusiyana ndi kupeza zofunikira. Fd sichinapangidwe kuti ilowe m'malo mwake: ili ndi zoikamo zodziwika bwino zomwe zimayikidwa mwachisawawa, kufotokozera njira yogwiritsira ntchito mafayilo.

Mwachitsanzo, pofufuza mafayilo mu bukhu la Git repository, fd imangopatula mafayilo obisika ndi ma subdirectories, kuphatikizapo .git directory, ndipo imanyalanyazanso makadi amtundu wa .gitignore. Ponseponse, imafulumizitsa kusaka pobweretsa zotsatira zoyenera pakuyesa koyamba.

Mwachisawawa, fd imasakasaka mopanda chidwi m'ndandanda wamakono, ndi kutulutsa mitundu. Kusaka komweko pogwiritsa ntchito lamulo lopeza kumafunikira kulowetsa magawo ena pamzere wolamula. Mwachitsanzo, kuti mupeze mafayilo onse a .md (kapena .MD) m'ndandanda wamakono, mungalembe lamulo lopeza monga chonchi:

$ find . -iname "*.md"

Kwa fd zikuwoneka motere:

$ fd .md

Koma nthawi zina, fd imafunanso zina zowonjezera: mwachitsanzo, ngati mukufuna kuyika mafayilo obisika ndi maupangiri, muyenera kugwiritsa ntchito -H njira, ngakhale izi sizimafunika nthawi zambiri pofufuza.

fd imapezeka pamagawidwe ambiri a Linux. Mu Fedora ikhoza kukhazikitsidwa motere:

$ sudo dnf install fd-find

Simuyenera kusiya chilichonse

Kodi mukugwiritsa ntchito zida zatsopano za mzere wa Linux? Kapena mumangokhala pa akale okha? Koma mwina muli ndi combo, sichoncho? Chonde gawanani zomwe mwakumana nazo mu ndemanga.

Pa Ufulu Wotsatsa

Makasitomala athu ambiri ayamikira kale mapindu ma seva apamwamba!
izi ma seva enieni okhala ndi mapurosesa a AMD EPYC, CPU core frequency mpaka 3.4 GHz. Kukonzekera kwakukulu kudzakuthandizani kuti mukhale ndi kuphulika - 128 CPU cores, 512 GB RAM, 4000 GB NVMe. Fulumirani kuyitanitsa!

Njira 5 Zamakono Zopangira Zida Zamzere Zakale za Linux

Source: www.habr.com

Kuwonjezera ndemanga