5 alternatiba moderno Linux komando-lerro zaharreko tresnetarako

Komando-lerroko tresna zaharrenekin batera alternatiba modernoagoak erabiliz, gehiago dibertitu dezakezu eta baita produktibitatea hobetu ere.

5 alternatiba moderno Linux komando-lerro zaharreko tresnetarako

Linux/Unixen eguneroko lanean, komando lerroko tresna asko erabiltzen ditugu, adibidez, diskoaren erabilera eta sistemaren baliabideak kontrolatzeko. Tresna horietako batzuk aspalditik daude. Esaterako, top 1984an agertu zen, eta du lehen kaleratzea 1971koa da.

Urteen poderioz, tresna hauek modernizatu eta sistema ezberdinetara eraman dira, baina orokorrean ez dira lehen bertsioetatik urrun ibili, itxura eta erabilgarritasuna ere ez dira asko aldatu.

Sistema-administratzaile askok behar dituzten tresna bikainak dira. Hala ere, komunitateak onura gehigarriak eskaintzen dituzten tresna alternatiboak garatu ditu. Horietako batzuek interfaze moderno eta ederra dute, beste batzuek, berriz, asko hobetzen dute erabilgarritasuna. Itzulpen honetan, Linux komando lerroko tresnei estandarren bost alternatibaz hitz egingo dugu.

1. ncdu vs du

NCurses Diskoaren erabilera (ncdu) du-ren antzekoa da, baina curses liburutegian oinarritutako interfaze interaktibo batekin. ncdu-k zure diskoko espazio gehien hartzen duen direktorio-egitura bistaratzen du.

ncdu-k diskoa aztertzen du eta, ondoren, emaitzak gehien erabiltzen diren direktorio edo fitxategien arabera ordenatuta erakusten ditu, adibidez:

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

Sarreretan zehar nabiga dezakezu gezi-teklak erabiliz. Sartu sakatzen baduzu, ncdu-k hautatutako direktorioaren edukia bistaratuko du:

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

Tresna hau erabil dezakezu, adibidez, diskoko leku gehien hartzen duten fitxategiak zehazteko. Aurreko direktoriora joan zaitezke ezkerreko gezi-tekla sakatuz. ncdu-rekin fitxategiak ezaba ditzakezu d tekla sakatuz. Ezabatu aurretik berrespena eskatzen du. Ezabatzeko funtzioa desgaitu nahi baduzu fitxategi baliotsuak ustekabean galtzea saihesteko, erabili -r aukera irakurtzeko soilik sarbide modua gaitzeko: ncdu -r.

ncdu Linux plataforma eta banaketa askotan dago eskuragarri. Adibidez, dnf erabil dezakezu Fedora-n zuzenean biltegi ofizialetatik instalatzeko:

$ sudo dnf install ncdu

2. htop vs top

htop goikoaren antzeko prozesu-ikustaile interaktiboa da, baina kutxatik kanpo erabiltzailearen esperientzia polita eskaintzen du. Lehenespenez, htop-ek topen informazio bera bistaratzen du, baina modu bisualagoan eta koloretsuagoan.

Berez, htop-ek itxura hau du:

5 alternatiba moderno Linux komando-lerro zaharreko tresnetarako
Goian ez bezala:

5 alternatiba moderno Linux komando-lerro zaharreko tresnetarako
Gainera, htop-ek sistemari buruzko informazio orokorra erakusten du goialdean, eta behealdean funtzio-teklak erabiliz komandoak abiarazteko panel bat erakusten du. F2 sakatuta konfigura dezakezu konfigurazio pantaila irekitzeko. Ezarpenak atalean, koloreak alda ditzakezu, neurriak gehitu edo kendu edo ikuspegi orokorraren panelaren bistaratzeko aukerak alda ditzakezu.

Top-en azken bertsioen ezarpenak doituz antzeko erabilgarritasuna lor dezakezun arren, htop-ek konfigurazio lehenetsi erosoak eskaintzen ditu, eta horrek praktikoagoa eta erabiltzeko errazago egiten du.

3. tldr vs gizona

Tldr komando lerroko tresnak komandoei buruzko laguntza-informazio sinplifikatua erakusten du, batez ere adibideak. Komunitateak garatu zuen tldr orriak proiektua.

Aipatzekoa da tldr ez dela gizakiaren ordezkoa. Man-orrien irteerako tresna kanoniko eta osatuena da oraindik. Hala ere, kasu batzuetan gizakia soberakoa da. Komando bati buruzko informazio osoa behar ez duzunean, bere oinarrizko erabilerak gogoratzen saiatzen ari zara. Adibidez, curl komandoaren man orrialdeak ia 3000 lerro ditu. Curl-erako tldr orrialdeak 40 lerro ditu. Bere zatiak honela dauka:


$ 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 "luzeegia" esan nahi du; ez du irakurri": hau da, testu batzuk baztertu ziren bere gehiegizko esanahiagatik. Izena egokia da tresna honetarako, esku orriak, erabilgarriak izan arren, batzuetan luzeegiak izan daitezkeelako.

Fedorarentzat, tldr Python-en idatzi zen. Dnf kudeatzailea erabiliz instala dezakezu. Normalean, tresnak Interneteko sarbidea behar du funtzionatzeko. Baina Fedoraren Python bezeroak orrialde hauek deskargatu eta cachean gordetzeko aukera ematen du lineaz kanpoko sarbidea izateko.

4.jq vs sed/grep

jq komando lerrorako JSON prozesadorea da. Sed edo grep-en antzekoa da, baina JSON datuekin lan egiteko bereziki diseinatuta dago. Eguneroko zereginetan JSON erabiltzen duen garatzaile edo sistema administratzailea bazara, hau da zuretzat tresna.

jq-en abantaila nagusia grep eta sed bezalako testu prozesatzeko tresna estandarren aurrean JSON datuen egitura ulertzen duela da, eta adierazpen bakarrean kontsulta konplexuak sortzeko aukera ematen du.

Adibidez, JSON fitxategi honetan edukiontzien izenak bilatzen saiatzen ari zara:

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

Exekutatu grep katearen izena aurkitzeko:

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

grep-ek izena hitza duten lerro guztiak itzuli ditu. Grep-i aukera batzuk gehi diezazkiokezu hura murrizteko, eta erabili adierazpen erregularren manipulazio batzuk edukiontzien izenak aurkitzeko.

jq erabiliz emaitza bera lortzeko, idatzi besterik ez:

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

Komando honek bi edukiontzien izenak emango dizkizu. Bigarren edukiontziaren izena soilik bilatzen ari bazara, gehitu array-elementuaren indizea adierazpenari:

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

jq-k datuen egiturari buruz dakienez, emaitza berdinak sortzen ditu fitxategi formatua apur bat aldatzen bada ere. baliteke grep eta sed behar bezala ez funtzionatzea kasu honetan.

jq-k funtzio asko ditu, baina beste artikulu bat behar da horiek deskribatzeko. Informazio gehiagorako jarri harremanetan proiektuaren orria jq edo tldr.

5. fd vs aurkitu

fd Find utilityaren alternatiba sinplifikatu bat da. Fd-k ez du guztiz ordezkatu nahi: ezarpen ohikoenak ditu instalatuta lehenespenez, fitxategiekin lan egiteko ikuspegi orokorra definituz.

Adibidez, Git biltegiko direktorio batean fitxategiak bilatzean, fd-k automatikoki baztertzen ditu ezkutuko fitxategiak eta azpidirektorioak, .git direktorioa barne, eta .gitignore fitxategiko komodinak ere baztertzen ditu. Orokorrean, bilaketak bizkortzen ditu lehen saiakeran emaitza esanguratsuagoak emanez.

Lehenespenez, fd-k maiuskulak eta minuskulak bereizten ez dituen bilaketa bat egiten du uneko direktorioan, kolore-irteerarekin. Find komandoa erabiliz bilaketa berdinak komando-lerroan parametro gehigarriak sartu behar ditu. Adibidez, uneko direktorioko .md (edo .MD) fitxategi guztiak aurkitzeko, honelako find komando bat idatziko zenuke:

$ find . -iname "*.md"

Fd-rako honelakoa da:

$ fd .md

Baina kasu batzuetan, fd-k aukera gehigarriak ere eskatzen ditu: adibidez, ezkutuko fitxategiak eta direktorioak sartu nahi badituzu, -H aukera erabili behar duzu, nahiz eta normalean hori ez den beharrezkoa bilatzerakoan.

fd Linux banaketa askotan dago eskuragarri. Fedora-n honela instalatu daiteke:

$ sudo dnf install fd-find

Ez duzu ezer uko egin behar

Linux komando lerroko tresna berriak erabiltzen ari al zara? Edo zaharren gainean bakarrik esertzen zara? Baina ziurrenik konbinazio bat duzu, ezta? Mesedez, partekatu zure esperientzia iruzkinetan.

Publizitatearen Eskubideei buruz

Gure bezeroetako askok dagoeneko estimatu dituzte onurak zerbitzari epikoak!
It AMD EPYC prozesadoredun zerbitzari birtualak, CPU nukleoaren maiztasuna 3.4 GHz arte. Gehienezko konfigurazioak eztanda bat edukitzeko aukera emango dizu: 128 CPU nukleo, 512 GB RAM, 4000 GB NVMe. Azkar ibili eskaera egitera!

5 alternatiba moderno Linux komando-lerro zaharreko tresnetarako

Iturria: www.habr.com

Gehitu iruzkin berria