5 alternativa moderne për mjetet e vjetra të komandave të Linux-it

Duke përdorur alternativa më moderne së bashku me mjetet e vjetra të komandave, mund të shijoni më shumë dhe madje të rrisni produktivitetin.

5 alternativa moderne për mjetet e vjetra të komandave të Linux-it

NĂ« punĂ«n e pĂ«rditshme nĂ« Linux / Unix, ne pĂ«rdorim shumĂ« mjete komandash — pĂ«r shembull, du pĂ«r tĂ« monitoruar pĂ«rdorimin e diskut dhe burimeve sistemore. Disa prej kĂ«tyre mjeteve ekzistojnĂ« prej kohĂ«sh. PĂ«r shembull, top u shfaq nĂ« vitin 1984, ndĂ«rsa lĂ«shimi i parĂ« i du daton nga viti 1971.

Gjatë viteve, këto mjete janë modernizuar dhe portuar në sisteme të ndryshme, por në përgjithësi, ato nuk janë larguar shumë nga versionet e tyre të para, pamja dhe përdorueshmëria e tyre gjithashtu nuk kanë ndryshuar shumë.

Këto janë mjete të shkëlqyera që shumë administratorë sistemesh i nevojiten. Megjithatë, komuniteti ka zhvilluar mjete alternative që ofrojnë përfitime shtesë. Disa prej tyre thjesht kanë një ndërfaqe modern dhe të bukur, ndërsa të tjerët përmirësojnë ndjeshëm lehtësinë e përdorimit. Në këtë përkthim do të flasim për pesë alternativa ndaj mjeteve standarde të linjës së komandave Linux.

1. ncdu vs du

NCurses Disk Usage (ncdu) është e ngjashme me du, por me një ndërfaqe interaktive që bazohet në bibliotekën curses. ncdu shfaq strukturën e direktorive që zënë pjesën më të madhe të hapësirës suaj të diskut.

ncdu analizon diskun dhe pastaj tregon rezultatet e renditura sipas direktorive ose skedarëve më të përdorur, për shembull:

ncdu 1.14.2 ~ Përdorni çelësat me shigjeta për të naviguar, shtypni ? për ndihmë
--- /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
 Përdorimi total i diskut: 159.4 GiB  Madhësia e dukshme: 280.8 GiB  Elementet: 561540

Mund të lëvizni nëpër shënime duke përdorur çelësat me shigjeta. Nëse shtypni Enter, ncdu do të tregojë përmbajtjen e katalogut të zgjedhur:

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

Mund të përdorni këtë mjet për të përcaktuar, për shembull, cilat skedarë zënë më shumë hapësirë në disk. Mund të kaloni në katalogun e mëparshëm duke shtypur çelësin me shigjetë nga e majta. Me ndihmën e ncdu mund të fshini skedarë duke shtypur çelësin d. Para fshirjes ai kërkon konfirmim. Nëse dëshironi të çaktivizoni funksionin e fshirjes për të parandaluar humbjen aksidentale të skedarëve të çmuar, përdorni opsionin -r për të aktivizuar modalitetin e qasjes vetëm për lexim: ncdu -r.

ncdu është në dispozicion për shumë platforma dhe shpërndarje të Linux-it. Për shembull, mund të përdorni dnf për ta instaluar në Fedora direkt nga depozitat zyrtare:

$ sudo dnf install ncdu

2. htop vs top

Htop është një mjet interaktiv për të parë proceset, i ngjashëm me top, por që ofron nga kutia një ndërveprim më të këndshëm me përdoruesin. Së shpejti, htop tregon të njëjtën informacion si top, por në një pamje më të dukshme dhe me ngjyra.

Së shpejti htop duket kështu:

5 alternativa moderne për mjetet e vjetra të komandave të Linux-it
Ndryshe nga top:

5 alternativa moderne për mjetet e vjetra të komandave të Linux-it
Përveç kësaj, pjesa e sipërme e htop jep një informacion të përmbledhur mbi sistemin, ndërsa pjesa e poshtme - një panel për ekzekutimin e komandave me ndihmën e çelësave funksionalë. Ju mund ta rregulloni atë duke shtypur F2 për të hapur ekranin e konfigurimit. Në konfigurimet, mund të ndryshoni ngjyrat, të shtoni ose të hiqni metrikat ose të ndryshoni parametrat e shfaqjes së panelit të përmbledhjes.

Edhe pse, duke e rregulluar konfigurimin e versioneve të fundit të top, gjithashtu mund të arrihet një përdorshmëri e ngjashme, htop ofron konfigurime të lehta për t'u përdorur, duke e bërë atë më praktike dhe më të lehtë për t'u përdorur.

3. tldr vs man

Mjeti i komandës tldr tregon informacion të thjeshtuar ndihmës për komandat, kryesisht shembuj. Ai u zhvillua nga komuniteti projekti tldr pages.

ËshtĂ« e rĂ«ndĂ«sishme tĂ« theksohet se tldr nuk Ă«shtĂ« njĂ« zĂ«vendĂ«sim pĂ«r man. Ai vazhdon tĂ« jetĂ« instrumenti kanonik dhe mĂ« i plotĂ« pĂ«r shfaqjen e faqeve tĂ« ndihmĂ«s. MegjithatĂ«, nĂ« disa raste man Ă«shtĂ« i tepĂ«rt. Kur nuk keni nevojĂ« pĂ«r informacion tĂ« plotĂ« mbi njĂ« komandĂ«, thjesht pĂ«rpiqeni tĂ« kujtoni opsionet kryesore tĂ« pĂ«rdorimit tĂ« saj. PĂ«r shembull, faqja man pĂ«r komandĂ«n curl ka pothuajse 3000 rreshta. Faqja tldr pĂ«r curl ka njĂ« gjatĂ«si prej 40 rreshtash. NjĂ« fragment i saj duket kĂ«shtu:


$ tldr curl

# curl
  Transferon të dhënat nga ose në një server.
  Mbështet shumicën e protokolleve, përfshirë HTTP, FTP dhe POP3.
  Më shumë informacion: .

- Shkarkoni përmbajtjen e një URL-je në një skedar:

  curl http://example.com -o filename

- Shkarkoni një skedar, duke ruajtur daljen nën emrin e skedarit të treguar nga URL-ja:

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

- Shkarkoni një skedar, duke ndjekur [L]okacionet e ridrejtimit, dhe automatikisht [C]continuing (rindërprerja) e një transferimi të mëparshëm:

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

- Dërgoni të dhëna me formulë (kërkesë POST e llojit `application/x-www-form-urlencoded`):

  curl -d 'name=bob' http://example.com/form
- Dërgoni një kërkesë me një header shtesë, duke përdorur një metodë të zakonshme HTTP:

  curl -H 'X-My-Header: 123' -X PUT http://example.com
- Dërgoni të dhëna në formatin JSON, duke specifikuar headerin e duhura për llojin e përmbajtjes:

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

... RESTRIKTIME E DALJES

TLDR do të thotë "shumë e gjatë; nuk e kam lexuar": domethënë, një tekst i caktuar është injoruar për shkak të tepër të folurisë së tij. Emri është i përshtatshëm për këtë mjet, sepse faqet e man-ave, ndonëse të dobishme, ndonjëherë janë shumë të gjata.

Për Fedora, tldr është shkruar në Python. Mund ta instaloni përmes menaxherit dnf. Zakonisht, për të punuar mjeti kërkohet akses në internet. Por klienti Python në Fedora lejon shkarkimin dhe ruajtjen e këtyre faqeve për qasje offline.

4. jq vs sed/grep

jq është një procesor JSON për linjën e komandës. Ai është i ngjashëm me sed ose grep, por është zhvilluar posaçërisht për të punuar me të dhëna në formatin JSON. Nëse jeni zhvillues ose administrator sistemi që përdorni JSON në detyrat e përditshme, ky mjet është për ju.

Avantazhi kryesor i jq mbi mjetet standarde të përpunimit të tekstit, si grep dhe sed, është se ai kupton strukturën e të dhënave JSON, duke lejuar krijimin e kërkesave komplekse në një shprehje.

Për shembull, po përpiqeni të gjeni emrat e kontejnerëve në këtë skedar 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"
  }
}

Përdorni grep për të gjetur rreshtin name:

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

grep ktheu të gjithë rreshtat që përmbajnë fjalën name. Mund të shtoni disa parametra të tjerë në grep për ta kufizuar atë dhe me disa manipulime me shprehje të rregullta të gjeni emrat e kontejnerëve.

Për të marrë të njëjtin rezultat me jq, mjafton të shkruani:

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

Kjo komandë do t'ju japë emrat e të dy kontejnerëve. Nëse po kërkoni vetëm emrin e kontejnerit të dytë, shtoni indeksin e elementit të vargut në shprehje:

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

Duke qenë se jq e njeh strukturën e të dhënave, ai jep të njëjtat rezultate, madje edhe nëse formati i skedarit ndryshon pak. grep dhe sed në këtë rast mund të funksionojnë gabim.

jq ka shumë funksione, por për t'i përshkruar ato nevojitet një artikull tjetër. Për informacione shtesë, ju lutemi kontaktoni faqen e projektit jq ose tldr.

5. fd vs find

fd — Ă«shtĂ« njĂ« alternativĂ« e thjeshtuar e mjetit find. Fd nuk ka pĂ«r qĂ«llim ta zĂ«vendĂ«sojĂ« plotĂ«sisht atĂ«: ai ka cilĂ«simet mĂ« tĂ« zakonshme tĂ« vendosura si parazgjedhje, tĂ« cilat pĂ«rcaktojnĂ« qasjen e pĂ«rbashkĂ«t ndaj punĂ«s me skedarĂ«t.

Për shembull, kur kërkoni skedarë në katalogun e depozitës Git, fd automatikisht përjashton skedarët dhe nëndegët e fshehura, duke përfshirë katalogun .git, dhe gjithashtu injoron modelet nga skedari .gitignore. Në pëgjithësi, ai e përshpejton kërkimin, duke dhënë rezultate më të përshtatshme që në përpjekjen e parë.

Sipas parazgjedhjes, fd bën kërkimin pa marrë parasysh regjistrin në katalogun aktual me rezultatet me ngjyra. E njëjta kërkesë e kryer me komandën find kërkon që të futen parameter të tjerë në komandën e linjës. Për shembull, për të gjetur të gjithë skedarët .md (ose .MD) në katalogun aktual, duhen shkruar komandat e tilla:

$ find . -iname "*.md"

Për fd ajo duket kështu:

$ fd .md

Por disa raste, edhe për fd kërkohen parametra shtesë: për shembull, nëse dëshironi të përfshini skedarët dhe katalogët e fshehur, duhet të përdorni opsionin -H, edhe pse zakonisht kjo nuk kërkohet gjatë kërkimit.

fd është i disponueshëm për shumë distribucione Linux. Në Fedora, mund të instalohet kështu:

$ sudo dnf install fd-find

Nuk është e nevojshme të heqësh dorë nga diçka

A po përdorni mjete të reja të linjës së komandës Linux? Apo qëndroni ekskluzivisht me të vjetrat? Por më shpesh, keni një kombinim, apo jo? Ju lutem, ndani përvojën tuaj në komentet.

Si reklamë

Shumë nga klientët tanë tashmë kanë vlerësuar avantazhet serverëve epikë!
Kjo serverĂ« virtualĂ« me procesorĂ« AMD EPYC, me frekuencĂ« tĂ« procesorit deri nĂ« 3.4 GHz. Konfigurimi maksimal do t'ju lejojĂ« tĂ« shfrytĂ«zoni plotĂ«sisht potencialin — 128 bĂ«rthamĂ« CPU, 512 GB RAM, 4000 GB NVMe. Mos e humbisni mundĂ«sinĂ« tĂ« porosisni!

5 alternativa moderne për mjetet e vjetra të komandave të Linux-it

Burimi: habr.com

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster