5 kaasaegset alternatiivi vanadele Linuxi käsurea tööriistadele

Kaasaegsete alternatiivide kasutamine koos vanade käsurea tööriistadega võib tuua rohkem naudingut ja isegi suurendada töö efektiivsust.

5 kaasaegset alternatiivi vanadele Linuxi käsurea tööriistadele

Igapäevases Linuxi/Unix töökorralduses kasutame me mitmeid käsurea tööriistu — näiteks du, et jälgida ketta ja süsteemiressursside kasutamist. Mõned neist tööriistadest on eksisteerinud juba pikka aega. Näiteks ilmus top 1984. aastal ning du esimesed väljaanded ulatuvad 1971. aastasse.

Aastate jooksul on neid tööriistu uuendatud ja erinevatele süsteemidele porteeritud, kuid üldiselt pole nad oma esimestest versioonidest kaugele jõudnud, nende välimus ja kasutatavus ei ole samuti oluliselt muutunud.

Needlike tööriistad, mida paljud süsteemiadministraatorid vajavad. Kuid kogukond on välja töötanud alternatiivsed tööriistad, mis pakuvad täiendavaid eeliseid. Mõned neist on lihtsalt kaasaegse ja kauni kasutajaliidese poolest paremad, teised aga muudavad oluliselt kasutusmugavust. Selles tõlkes räägime viiest alternatiivsest lahendusest Linuxi käsurea standardtööriistadele.

1. ncdu vs du

NCurses Disk Usage (ncdu) on sarnane du-ile, kuid interaktiivse liidese ja curses-kasutusraamatukoguga. ncdu kuvab kaustade struktuuri, mis hõivavad suure osa teie kettaruumi.

ncdu analüüsib ketast ja kuvab seejärel tulemused, sorteeritud kõige rohkem kasutatud kaustade või failide järgi, näiteks:

ncdu 1.14.2 ~ Liiku nooleklahvide abil, vajutage ? abi saamiseks
--- /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
 Kokku kettaruumi kasutus: 159.4 GiB  Ilmne suurus: 280.8 GiB  Üksuseid: 561540

Kategooriate vahel saab navigeerida nooleklahvide abil. Kui vajutate Enter, näitab ncdu valitud katalooge:

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

Seda tööriista saab kasutada näiteks selleks, et tuvastada, millised failid võtavad kõige rohkem kettaruumi. Eelmistesse kataloogidesse saab liikuda, vajutades vasaku nooleklahvi. Ncdu abil saab faile kustutada, vajutades klahvi d. Enne kustutamist küsitakse kinnitust. Kui soovite kustutamisfunktsiooni keelata, et vältida väärtuslike failide kogemata kadumist, kasutage valikut -r, et lubada ainult lugemisrežiim: ncdu -r.

Ncdu on saadaval paljudele platvormidele ja Linuxi distributsioonidele. Näiteks võite kasutada dnf selle installimiseks Fedora süsteemis otse ametlikest repodest:

$ sudo dnf install ncdu

2. htop vs top

Htop — on interaktiivne utiliit protsesside vaatamiseks, mis sarnaneb top-iga, kuid pakub välja arvatud kasutajaliidest. Vaikimisi kuvab htop sama teavet nagu top, kuid palju arusaadavamalt ja värvikamalt.

Vaikimisi näeb htop välja selline:

5 kaasaegset alternatiivi vanadele Linuxi käsurea tööriistadele
Erinevalt top-ist:

5 kaasaegset alternatiivi vanadele Linuxi käsurea tööriistadele
Lisaks kuvab htop ülemises osas süsteemi ülevaateinformatsiooni ja alumises osas - paneeli käskude käivitamiseks funktsiooniklahvide abil. Saate seda kohandada, vajutades F2, et avada seadistuste экран. Seadetes saate muuta värve, lisada või eemaldada mõõdikuid või kohandada ülevaatepaneeli kuvamise parameetreid.

Kuigi viimane versioon top'i seadistuste ringivaatamine võib samuti sarnase kasutatavuse saavutada, pakub htop mugavaid vaikeseadeid, mis muudavad selle praktilisemaks ja lihtsamaks kasutada.

3. tldr vs man

Käskude rida tldr kuvab lihtsustatud teavet käskude kohta, enamikult näiteid. Selle lõi kogukond. tldr lehekülgede projekt.

On oluline märkida, et tldr ei asenda man-dokumenti. See jääb endiselt kanoniliseks ja kõige täielikumaks käsiraamatute tööriistaks. Siiski on mõnel juhul man üleliigne. Kui teil pole vaja põhjalikku teavet mõne käsu kohta ja proovite lihtsalt meeles pidada selle peamisi kasutusvõimalusi. Näiteks curl käsu man-leht sisaldab peaaegu 3000 rida. tldr leht curl jaoks on 40 rida pikk. Selle katkendi välimus on järgmine:


$ tldr curl

# curl
  Edastab andmeid serverisse või sealt tagasi.
  Toetab enamikku protokolle, sealhulgas HTTP, FTP ja POP3.
  Rohkem teavet: .

- Laadi URL sisu faili:

  curl http://example.com -o filename

- Laadi fail, hoides väljundit URL-i näidatud failinimes:

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

- Laadi fail, järgides [L]okatsiooni ümbersuunamisi ja automaatselt [C]ontinuues (taaselustades) varasemalt alustatud faili edastust:

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

- Saatke vormindatud andmeid (POST-päring tüüpi `application/x-www-form-urlencoded`):

  curl -d 'name=bob' http://example.com/form
- Saatke päring koos lisa pealkirjaga, kasutades kohandatud HTTP meetodit:

  curl -H 'X-My-Header: 123' -X PUT http://example.com
- Saatke andmed JSON-vormingus, määrates sobiva sisutüübi päise:

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

... LÜHENDATUD VÄLJUND

TLDR tähendab «liialt pikk; ei lugenud»: see tähendab, et mõni tekst on liialt sõnatud ja seetõttu tähelepanuta jäetud. Nimi sobib sellele tööriistale, kuna man-leheküljed, kuigi kasulikud, on vahel liiga pikad.

Fedora jaoks on tldr kirjutatud Pythonis. Saate selle installida dnf halduriga. Tööriista kasutamiseks on tavaliselt vajalik juurdepääs internetile. Kuid Fedora Python klient võimaldab neid lehti alla laadida ja vahemälusse salvestada, et kasutada neid offline.

4. jq vs sed/grep

jq on JSON-i töötlemise tööriist käsureal. See sarnaneb sed või grep'iga, kuid on spetsiaalselt mõeldud JSON-formaadis andmete töötlemiseks. Kui olete arendaja või süsteemiadministraator, kes kasutab JSON-i igapäevastes ülesannetes, on see tööriist teid jaoks.

jq peamine eelis tavaliste tekstitöötlustööriistade, nagu grep ja sed, ees on selles, et see mõistab JSON-andmete struktuuri, võimaldades koostada keerulisi päringuid ühe väljendina.

Näiteks üritate leida konteinerite nimesid sellest JSON-failist:

{
  "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"
  }
}

Käivita grep, et leida rida name:

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

grep tagastas kõik read, mis sisaldavad sõna name. Saate lisada veel mõned parameetrid grepile, et seda kitsendada, ning regulaaravaldistega leida konteinerite nimesid.

Sama tulemuse saamiseks jq abil piisab, kui kirjutada:

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

See käsk tagastab mõlema konteineri nimed. Kui otsite ainult teise konteineri nime, lisage massiivi elemendi indeks väljendisse:

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

Kuna jq tunneb andmestruktuuri, annab see samu tulemusi isegi siis, kui faili formaat on veidi muutunud. grep ja sed võivad sel juhul töötada valesti.

jq-l on palju funktsioone, kuid nende kirjeldamiseks on vajalik veel üks artikkel. Täiendava teabe saamiseks võtke ühendust projekti lehelt jq või tldr.

5. fd vs find

fd — see on lihtsustatud alternatiiv find utiliidile. Fd ei püüa seda täielikult asendada: sellel on vaikimisi paljusid levinud seadeid, mis määravad üldise lähenemise failide töötlemisel.

Näiteks, kui otsite faile Git repois, välistab fd automaatselt varjatud failid ja alamkaustad, sealhulgas .git kausta, ning ignoreerib ka .gitignore failist tulenevaid mustreid. Üldiselt kiirendab see otsingut, andes esimesel katsel asjakohasemaid tulemusi.

Vaikimisi teeb fd otsingu suurust arvestamata käesolevas kataloogis värvilise väljundiga. Sama otsingu sooritamine find käsuga nõuab täiendavate parameetrite sisestamist käsureale. Näiteks, et leida kõiki .md (või .MD) faile käesolevas kataloogis, tuleks sisestada järgmine find käsk:

$ find . -iname "*.md"

Fd jaoks näeb see välja järgmine:

$ fd .md

Kuid mõnel juhul on fd jaoks vaja ka täiendavaid parameetreid: näiteks kui soovite varjatud faile ja kaustu sisse lülitada, peate kasutama valikut -H, kuigi tavaliselt ei ole seda otsingu ajal vaja.

fd on saadaval paljude Linuxi jaotuste jaoks. Fedoral saab selle installida järgmiselt:

$ sudo dnf install fd-find

Pole tingimata midagi loobuda

Kasutate uusi Linuxi käsuridade tööriistu? Või jääte täielikult vana peale? Tõenäoliselt on teil kombinatsioon, eks? Palun jagage oma kogemust kommentaariumis.

Reklaami õigustes

Paljud meie kliendid on juba hinnanud epilisi servereid!
See virtuaalsed serverid AMD EPYC protsessoritega, CPU tuuma sagedus kuni 3.4 GHz. Maksimaalne konfiguratsioon võimaldab teil täielikult välja elada — 128 CPU tuuma, 512 GB RAM, 4000 GB NVMe. Kiirustage tellima!

5 kaasaegset alternatiivi vanadele Linuxi käsurea tööriistadele

Allikas: habr.com

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster