6 alternative CLI-verktøy jeg straks installerer på Linux

Oppdag spennende og fargerike Linux-verktøy som forbedrer terminalopplevelsen med enkel lesbarhet og raskere søk, inkludert bat, ripgrep, delta og fzf.

Standardverktøyene på Linux er kjedelige; har du noen gang lagt merke til det? Deres funksjon er essensiell, men de er kjedelige. Ville det ikke vært gøy å pifte opp utdataene med noen fine farger? Eller til og med gjøre dem raskere? Disse terminalverktøyene gjør det og mer.

bat: Som cat, men bedre

En moderne og lesbar cat-erstatning

Cat var den første kommandoen jeg lærte, og den forblir en av de mest brukte. Men den viser sin alder fordi den bare viser gammelt, uformattert tekst. Det er ofte vanskelig å lese komplekse filer, som konfigurasjonsfiler, kode, JSON eller YAML.

Bat er akkurat som cat, men bedre. Den adresserer lesbarhetsproblemet ved å fremheve komplekse filer med fine farger (aka syntaksutheving). Den gjør filer mye lettere å lese fordi seksjoner og grenser skiller seg ut.

Bat har noen tilleggsfunksjoner som gjør den mer attraktiv, som integrasjon med Git for å merke endrede linjer. Den kan også jobbe med andre verktøy, som fzf eller find, for å vise vinduer med fargeforhåndsvisning.

Bat er universelt tilgjengelig; du vil finne den i nesten hver distro-repositorium.

ripgrep: grep på steroider

Superrask og supersmart

Som alle de andre verktøyene jeg vil nevne, er ripgrep en oppgradering av sin standard motpart. Hovedsalgsargumentet er hastighet: Den utfører flere søk parallelt, der dens eldre motpart, grep, ikke gjør det. Ripgrep utnytter kraften til moderne CPU-er ved å spre arbeidet over alle CPU-kjerner.

Ripgrep er ikke bare lynrask; den har også en lang liste med nyttige funksjoner, som smart store-bokstav-detektering, ignorering av spesifikke filer og mapper, og integrasjon med andre applikasjoner.

Smart store-bokstav-detektering er en enkel og elegant funksjon som burde være en del av hver søkefunksjon. Det betyr bare at hvis du bruker store bokstaver i søket ditt, blir søket store-bokstav-følsomt. Det er en ofte savnet kvalitetsforbedrende funksjon.

Ripgrep ignorerer også spesifikke filer og mapper, ifølge en gitignore eller ignore-fil. For eksempel vil følgende fil få ripgrep til å ignorere alle bilder kalt foo.jpg eller kataloger kalt ignored_dir.

ignored_dir/ **/foo.jpg

Ripgrep har utmerket integrasjon med andre applikasjoner. Emacs, Vim, Neovim og fzf har alle tredjepartsutvidelser som gir ripgrep-integrasjon; dette gjør at disse applikasjonene kan utnytte ripgreps kraftige søkemuligheter direkte. Fzf (et annet verktøy) tilbyr avanserte funksjoner som fungerer godt med ripgrep, som du vil se senere.

Det er ikke alt; Ripgrep kan også søke gjennom komprimerte filer med Z-flagget. Hvis du har et omfattende katalog med tekst- og komprimerte filer, kan ripgrep gå gjennom dem alle uten manuell dekomprimering. Fordi den ikke detaljerer mye om treffet, er den litt skuffende; likevel sparer den mye tid og klønete situasjoner.

Ripgrep er tilgjengelig i de fleste distro-repositorier, så referer til dokumentasjonen for din distro for pakkeinstallasjoner.

delta: ripgrep på steroider

Dobler opp ripgrep-godheten

Delta er typisk for programmerere, og det er et av mine favorittverktøy. Ripgrep gjør en fantastisk jobb med raskt å gå gjennom filer for å finne akkurat det du trenger; den har moderne funksjoner og en avansert søkesyntaks. Men utdataene er kjedelige fordi den mangler farge og kontekst. Mens noen kanskje argumenterer for at det er enkelt og fokuserer kun på søketermen, føler jeg at jeg trenger mer. Når jeg søker etter kode, vil jeg se den omkringliggende konteksten og fargene, fordi begge hjelper til med å skille klinten fra hveten.

For dere som er programmerere (eller er i gang med å starte), bruker delta syntaksutheving på ripgreps utdata. Den gir også ekstra funksjoner for integrasjon med Git, som er et dokumenthåndteringssystem. For eksempel gir den en fin side-ved-side-visning av endringer i dokumenter (aka en diff, som er kort for forskjell).

Git kan håndtere alle typer tekstdokumenter, og folk bruker det ofte til å lagre sine dotfiles (aka konfigurasjonsfiler som starter med et punkt). Hvis du er interessert i å lagre dotfiles, vil jeg absolutt anbefale å lagre dem med Git. I så fall vil delta også være verdt å se nærmere på, om ikke bare for diff-visningen alene.

Du kan installere delta via de offisielle arkivene for Debian, Ubuntu, Fedora, Arch Linux og noen få andre, under navnet git-delta. Det er også tilgjengelig via Homebrew og Nix.

fd: En raskere måte å finne med finere farger

En moderne løsning på gamle problemer

Som overskriften sier, er fd mye lik find, men det er betydelig raskere og har finere farger. Farger, som tidligere nevnt, gjør søkeresultater enklere å lese og skille. Fd fargekoder forskjellige filtyper og katalogstier.

I tillegg til bruken av farger, traverserer fd flere katalogtrær parallelt, noe som utnytter flere kjerner i moderne CPU-er. Denne kapasiteten strekker seg utover bare kataloggjenomsøkning; den gjelder også kommandokjøring. Når du bruker X-flagget, kjører fd en kommando parallelt mot hver match.

fd foo.txt -x bat --color=always

På samme måte som ripgrep, støtter fd også smarte søk med små og store bokstaver, og det overholder også gitignore-filen, så søkene blir mer praktiske og demper støy som standard.

Fd er tilgjengelig for nesten hver distribusjon der ute, så for å installere det, se på pakkebehandleren eller manualen til distribusjonen din.

eza: En moderne erstatning for ls

Enkel lesbarhet og navigasjon

Eza er en moderne vri på den standard ls-kommandoen, og dens hovedfunksjoner er bedre fargestøtte og ikoner. Selv om det ikke er essensielt, synes jeg ikoner er en fin detalj, men for meg er farger nødvendige.

Eza har noen andre fine funksjoner, slik som trevisning og hyperkoblinger. For eksempel, hyperkoblingsflagget konverterer alle fil- og katalognavn til klikkbare lenker ved hjelp av OSC 8-formatet. De fleste terminaler støtter disse lenkene, men for å være sikker kan du se på den uoffisielle listen over terminaler som støtter OSC 8 hyperkoblinger. Hver terminal er forskjellig, og du kan måtte aktivere det manuelt.

Det beste er at hyperkoblingene også fungerer med trevisningen, noe som betyr at du raskt kan navigere gjennom store kataloger. Imidlertid har jeg lagt merke til at ezas trevisning er mye tregere enn standard tre: tre vil strømme resultater etter hvert som de blir møtt, mens eza vil navigere gjennom hele (noen ganger store) katalogen og vise dem alle på en gang—dette kan ta litt tid, men det har fine farger og klikkbare lenker!

Det siste punktet er at det er irriterende å måtte skrive eza --icons hver gang, så du kan vurdere å lese guiden vår om hvordan du lager et alias.

Eza er tilgjengelig for de fleste populære distribusjoner, så du kan se på pakkebehandleren til distribusjonen din. Installeringen på Debian og Ubuntu krever imidlertid et egendefinert APT-arkiv, men ezas hjemmeside dekker dette.

Hold det uklart

Enten du er nybegynner eller veteran, er det å bruke et uskarpt søkeverktøy for historikken din i skallet essensielt—det er det viktigste verktøyet jeg har. Det er tidkrevende å skrive ut kommandoer, så jeg ønsker bare å gjøre det én gang. Det er også tidkrevende å søke etter tidligere kommandoer, fordi bruk av opp- og nedtastene senker arbeidsflyten min til en krype. Et uskarpt søkeverktøy løser begge disse problemene.

Hvis du ikke vet hva et uskarpt søk er, betyr det ganske enkelt en nær tilnærming til søk. For eksempel, å skrive emp eller xpe vil matche eksempel. Hvorfor er det viktig? Fordi jeg ikke kan huske en kommando jeg skrev for to måneder siden, eller fordi raske skift mellom flere kommandoer tar på hukommelsen min. Jeg trenger bare å huske noen få tegn i kommandoen, og det uskarpe søkeverktøyet snevrer raskt inn søket i sanntid.

I mange år har jeg stolt på fzf Historikk Søk-plugin for zsh. Alternativt finnes det et frittstående verktøy kalt Atuin som er nesten identisk. Begge gjør en enkel, men effektiv jobb.

Se på fzf Historikk Søk sin GitHub-repo for installasjonsinstruksjoner. Du kan også følge våre guider om hvordan du installerer Oh-My-Zsh og hvordan du installerer fzf. Et alternativ og enklere alternativ er å lese guiden vår om hvordan du installerer og bruker Atuin.

Et bonus-skript for å søke gjennom filer som en proff

Et spesielt triks, bare for deg

Hvis du installerer fzf,.

Ripgrep og Bat, du kan bruke følgende imponerende kommando for å fuzzy søke i filsystemet ditt og åpne de samsvarende linjene i din favoritt-teksteditor. Plasser følgende kommando i bashrc-filen din og last den inn igjen med source bashrc. Se guiden vår om hvordan bashrc-filen fungerer for mer informasjon.

s () { fzf --ansi --disabled \ --bind "change:reload:command \ rg --line-number --no-heading --color=always --smart-case {q} \ || :" \ --bind "enter:execute(${EDITOR:-nano} +{2} {1})" \ --delimiter ":" \ --preview "command bat -p --color=always {1} --highlight-line {2}" \ --preview-window 'up:80%,border-bottom,~3,+{2}+3/3' }

Denne kommandoen åpner som standard filer i nano, men du kan sette den til å bruke Vim, Neovim, Emacs og noen få andre. Sett bare editor-variabelen i bashrc-filen din og last den inn igjen:

export EDITOR=nvim

For å bruke skriptet, bytt ganske enkelt til en katalog som inneholder tekstfiler og bokstaven "s." Selv om denne kommandoen aksepterer vanlige ord som søkeord, kan du dramatisk øke nøyaktigheten hvis du følger guiden vår om Regex, en avansert søkesyntaks som du kan lære på en time.

Uten fzf History Search, ripgrep og delta, føler jeg meg fortapt, og derfor er de ofte de første verktøyene jeg installerer. Uten eza, bat og fd, føles terminalen enkel og uleselig. Imidlertid er dette ikke en uttømmende liste, og jeg har detaljert enda flere terminalverktøy for å overvåke systemressurser.

Hvis du vil lese flere artikler som 6 alternative CLI-verktøy jeg straks installerer på Linux, kan du besøke kategorien Linux.

Index
  1. bat: Som cat, men bedre
    1. En moderne og lesbar cat-erstatning
  2. ripgrep: grep på steroider
    1. Superrask og supersmart
  3. delta: ripgrep på steroider
    1. Dobler opp ripgrep-godheten
  4. fd: En raskere måte å finne med finere farger
    1. En moderne løsning på gamle problemer
  5. eza: En moderne erstatning for ls
    1. Enkel lesbarhet og navigasjon
  6. Skallet er ubrukelig uten fzf-historikk søk
    1. Hold det uklart
  7. Et bonus-skript for å søke gjennom filer som en proff
    1. Et spesielt triks, bare for deg

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

Go up