5 moderne alternatiewe vir ou Linux-opdragreëlnutsgoed

Deur meer moderne alternatiewe saam met ouer opdragreëlnutsgoed te gebruik, kan jy meer pret hê en selfs jou produktiwiteit verbeter.

5 moderne alternatiewe vir ou Linux-opdragreëlnutsgoed

In ons daaglikse werk op Linux/Unix gebruik ons ​​baie opdragreëlnutsgoed - byvoorbeeld om skyfgebruik en stelselhulpbronne te monitor. Sommige van hierdie gereedskap bestaan ​​al lank. Top het byvoorbeeld in 1984 verskyn, en die eerste vrystelling van du dateer uit 1971.

Deur die jare is hierdie gereedskap gemoderniseer en na verskillende stelsels oorgedra, maar oor die algemeen het hulle nie ver van hul eerste weergawes af beweeg nie, hul voorkoms en bruikbaarheid het ook nie veel verander nie.

Dit is wonderlike hulpmiddels wat baie stelseladministrateurs nodig het. Die gemeenskap het egter alternatiewe hulpmiddels ontwikkel wat bykomende voordele bied. Sommige van hulle het bloot 'n moderne, pragtige koppelvlak, terwyl ander die bruikbaarheid aansienlik verbeter. In hierdie vertaling sal ons praat oor vyf alternatiewe vir standaard Linux-opdragreëlnutsgoed.

1. ncdu vs du

NCurses-skyfgebruik (ncdu) is soortgelyk aan du, maar met 'n interaktiewe koppelvlak gebaseer op die vloeke-biblioteek. ncdu vertoon die gidsstruktuur wat die meeste van jou skyfspasie opneem.

ncdu ontleed die skyf en vertoon dan die resultate gesorteer volgens die dopgehou of lêers wat die meeste gebruik word, byvoorbeeld:

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

Jy kan deur die inskrywings navigeer met die pyltjie sleutels. As jy Enter druk, sal ncdu die inhoud van die geselekteerde gids vertoon:

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

Jy kan hierdie hulpmiddel gebruik om byvoorbeeld te bepaal watter lêers die meeste skyfspasie opneem. Jy kan na die vorige gids gaan deur die linkerpyltjie sleutel te druk. Met ncdu kan jy lêers uitvee deur die d-sleutel te druk. Dit vra vir bevestiging voordat dit uitgevee word. As jy die verwyderingsfunksie wil deaktiveer om toevallige verlies van waardevolle lêers te voorkom, gebruik die -r-opsie om leesalleentoegangsmodus te aktiveer: ncdu -r.

ncdu is beskikbaar vir baie Linux-platforms en verspreidings. U kan byvoorbeeld dnf gebruik om dit direk vanaf die amptelike bewaarplekke op Fedora te installeer:

$ sudo dnf install ncdu

2. htop vs top

htop is 'n interaktiewe proseskyker soortgelyk aan top, maar uit die boks bied dit 'n lekker gebruikerservaring. By verstek vertoon htop dieselfde inligting as top, maar op 'n meer visuele en kleurvolle manier.

By verstek lyk htop so:

5 moderne alternatiewe vir ou Linux-opdragreëlnutsgoed
Anders as bo:

5 moderne alternatiewe vir ou Linux-opdragreëlnutsgoed
Daarbenewens vertoon htop oorsiginligting oor die stelsel aan die bokant, en 'n paneel vir die uitvoer van opdragte met funksiesleutels onderaan. U kan dit konfigureer deur F2 te druk om die konfigurasieskerm oop te maak. In Instellings kan jy kleure verander, maatstawwe byvoeg of verwyder, of die oorsigpaneelvertoonopsies verander.

Alhoewel jy soortgelyke bruikbaarheid kan bereik deur die instellings van die nuutste weergawes van top aan te pas, bied htop gerieflike verstekkonfigurasies, wat dit meer prakties en makliker maak om te gebruik.

3. tldr vs man

Die tldr-opdragreëlnutsding vertoon vereenvoudigde hulpinligting oor opdragte, meestal voorbeelde. Dit is deur die gemeenskap ontwikkel tldr bladsye projek.

Dit is opmerklik dat tldr nie 'n plaasvervanger vir die mens is nie. Dit is steeds die kanonieke en mees omvattende manbladsy-uitvoerinstrument. In sommige gevalle is die mens egter oorbodig. Wanneer jy nie omvattende inligting oor 'n opdrag nodig het nie, probeer jy net die basiese gebruike daarvan onthou. Byvoorbeeld, die manbladsy vir die krul-opdrag bevat amper 3000 reëls. Die tldr-bladsy vir krul is 40 reëls lank. Sy fragment lyk soos volg:


$ 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 beteken "te lank; het nie gelees nie": dit wil sê, sommige teks is geïgnoreer weens die oormatige breedsprakigheid daarvan. Die naam is gepas vir hierdie hulpmiddel omdat die manbladsye, hoewel nuttig, soms te lank kan wees.

Vir Fedora is tldr in Python geskryf. Jy kan dit installeer met behulp van dnf manager. Tipies vereis die instrument internettoegang om te werk. Maar Fedora se Python-kliënt laat toe dat hierdie bladsye afgelaai en gekas word vir vanlyn toegang.

4.jq vs sed/grep

jq is 'n JSON-verwerker vir die opdragreël. Dit is soortgelyk aan sed of grep, maar is spesifiek ontwerp om met JSON-data te werk. As jy 'n ontwikkelaar of stelseladministrateur is wat JSON in alledaagse take gebruik, is dit die hulpmiddel vir jou.

Die grootste voordeel van jq bo standaard teksverwerkingsinstrumente soos grep en sed is dat dit die JSON-datastruktuur verstaan, sodat jy komplekse navrae in 'n enkele uitdrukking kan skep.

Byvoorbeeld, jy probeer om houername in hierdie JSON-lêer te vind:

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

Begin grep om die string naam te vind:

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

grep het alle reëls teruggestuur wat die woordnaam bevat. Jy kan nog 'n paar parameters by grep voeg om dit te beperk, en met 'n paar gereelde uitdrukking manipulasie vind die houer name.

Om dieselfde resultaat met jq te kry, skryf net:

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

Hierdie opdrag sal jou die name van beide houers gee. As jy net die naam van die tweede houer soek, voeg die indeks van die skikkingselement by die uitdrukking:

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

Aangesien jq van die datastruktuur weet, lewer dit dieselfde resultate, selfs al verander die lêerformaat effens. grep en sed werk dalk nie reg in hierdie geval nie.

jq het baie funksies, maar 'n ander artikel is nodig om dit te beskryf. Vir meer inligting kontak gerus projek bladsy jq of na tldr.

5. fd vs vind

fd is 'n vereenvoudigde alternatief vir die vind-hulpmiddel. Fd is nie bedoel om dit heeltemal te vervang nie: dit het die mees algemene instellings by verstek geïnstalleer, wat die algemene benadering tot werk met lêers definieer.

Byvoorbeeld, wanneer daar na lêers in 'n Git-bewaargids gesoek word, sluit fd outomaties versteekte lêers en subgidse uit, insluitend die .git-gids, en ignoreer ook wildcards van die .gitignore-lêer. In die algemeen versnel dit soektogte deur meer relevante resultate met die eerste probeerslag terug te gee.

By verstek voer fd 'n hoofletter-onsensitiewe soektog in die huidige gids uit, met kleuruitvoer. Dieselfde soektog met behulp van die vind-opdrag vereis dat bykomende parameters op die opdragreël ingevoer word. Byvoorbeeld, om alle .md (of .MD) lêers in die huidige gids te vind, sal jy 'n vind-opdrag soos volg skryf:

$ find . -iname "*.md"

Vir fd lyk dit so:

$ fd .md

Maar in sommige gevalle vereis fd ook bykomende opsies: as jy byvoorbeeld verborge lêers en gidse wil insluit, moet jy die -H-opsie gebruik, alhoewel dit gewoonlik nie vereis word wanneer jy soek nie.

fd is beskikbaar vir baie Linux-verspreidings. In Fedora kan dit soos volg geïnstalleer word:

$ sudo dnf install fd-find

Jy hoef niks prys te gee nie

Gebruik jy die nuwe Linux-opdragreëlnutsgoed? Of sit jy uitsluitlik op die oues? Maar heel waarskynlik het jy 'n kombinasie, reg? Deel asseblief jou ervaring in die kommentaar.

Oor die regte van reklame

Baie van ons kliënte het reeds die voordele waardeer epiese bedieners!
Dit virtuele bedieners met AMD EPYC verwerkers, SVE kernfrekwensie tot 3.4 GHz. Die maksimum konfigurasie sal jou toelaat om 'n ontploffing te hê - 128 SVE-kerne, 512 GB RAM, 4000 GB NVMe. Maak gou om te bestel!

5 moderne alternatiewe vir ou Linux-opdragreëlnutsgoed

Bron: will.com

Voeg 'n opmerking