Instrumente puternice de terminal și linie de comandă (CLI) pentru dezvoltarea web modernă

Publicat: 2022-03-10
Rezumat rapid ↬ Care este instrumentul tău preferat de linie de comandă? Astăzi, Louis Lazaris împărtășește o colecție de aplicații și utilități relevante din linia de comandă pe care le-a întâlnit personal în ultimii ani.

Mulți programatori moderni, inclusiv dezvoltatorii front-end și full-stack, lucrează zilnic cu linia de comandă. Chiar și cei care sunt relativ noi în dezvoltarea web își însușesc devreme abilitățile de linie de comandă și găsesc instrumente și utilități practice pentru a-și spori productivitatea în terminal.

Această postare prezintă o listă clasificată cu multe aplicații de linie de comandă pe care le-am descoperit personal în ultimii ani. Unele dintre ele sunt relativ noi, altele există de ceva vreme. Așa că sper că ceva din această rezumat vă va interesa și vă va ajuta să finalizați lucrurile atunci când lucrați în terminal.

Puteți sări la o categorie utilizând navigarea de mai jos:

  • Aplicații terminale
  • Utilități terminale și îmbunătățiri
  • Scripturi de linie de comandă și cadre
  • Instrumente de productivitate pentru terminal

Aplicații terminale

Această secțiune conține terminale, multiplexoare, emulatori de consolă, terminale mobile și spații de lucru din linia de comandă pe care le puteți utiliza pentru a înlocui aplicația implicită de terminal de pe sistemul dumneavoastră.

tmux

tmux este un multiplexor de terminale popular pentru sistemele de operare asemănătoare Unix, care vă permite să comutați cu ușurință între mai multe programe într-un singur terminal, cu posibilitatea de a „detașa” o sesiune (în timp ce rulează în fundal) sau de a o „reatașa” la un alt terminal. Terminal.

tmux
(Previzualizare mare)

iTerm2

iTerm2 , succesorul iTerm, este un înlocuitor pentru Terminalul tău pe macOS, care include funcții precum panouri divizate, căutare robustă, completare automată, reluare instantanee, împreună cu o mulțime de opțiuni de configurare.

iTerm2
(Previzualizare mare)

Mosh

Mosh este o aplicație de terminal la distanță (sau shell mobil) pentru utilizarea interactivă a SSH, care include mai multe caracteristici utile pentru cei care trebuie să facă sarcini bazate pe terminal prin WiFi slab, rețele celulare sau alte conexiuni mai puțin fiabile.

Mosh
(Previzualizare mare)

Zellij

Zellij este un spațiu de lucru terminal care are funcționalitatea de bază a unui multiplexor de terminal (similar cu tmux), dar include caracteristici care permit utilizatorilor să-l extindă și să creeze un mediu personalizat prin panouri/file și pluginuri.

Zellij
(Previzualizare mare)

Hiper

Hyper este o aplicație terminală bazată pe Electron pentru Mac, Windows sau Linux, care este construită cu tehnologii web (HTML/CSS/JS). Include zeci de teme și pluginuri și este construit pe viteză și stabilitate.

Hiper
(Previzualizare mare)

cmder

cmder este un emulator de consolă portabil pentru Windows care a fost construit din cauza lipsei unei opțiuni bune în acest domeniu pentru utilizatorii de Windows.

cmder
(Previzualizare mare)

ca naiba

a-Shell este o aplicație iOS care oferă un „terminal în buzunar” cu control fișiere/directoare, compatibilitate cu comenzile rapide Apple, mai multe ferestre și multe altele.

ca naiba
(Previzualizare mare)

Terminalul etern

Eternal Terminal este o altă aplicație de terminal la distanță inspirată de alte proiecte similare, populare.

Terminalul etern
(Previzualizare mare)

Zece Mâini

Ten Hands este o aplicație de terminal pentru Mac, Linux și Windows care este prezentată ca fiind cea mai simplă modalitate de a organiza și rula sarcini de linie de comandă, utilă pentru cei care execută sarcini zilnice similare pe mai multe proiecte.

Zece Mâini
(Previzualizare mare)

eDEX-UI

eDEX-UI este un emulator de terminal multiplatform și un monitor de sistem puternic inspirat de interfețele de utilizator pentru filme științifico-fantastice, în special, filmul Tron: Legacy.

eDEX-UI
(Previzualizare mare)

Tabinet

Tabby, anterior „Terminus”, este o aplicație de terminal personalizabilă multiplatformă pentru conexiuni locale, SSH, seriale și Telnet, care include suport pentru funcții precum panouri divizate, file inteligente, taste rapide personalizabile și multe altele.

Tabinet
(Previzualizare mare)

Cochilie de Pește

Fish Shell este o altă opțiune pentru un shell de linie de comandă pentru Linux, macOS și Windows, care include sugestie automată, completări de file, culoare pe 24 de biți, configurație bazată pe web, evidențiere a sintaxei, printre alte caracteristici practice.

Cochilie de Pește
(Previzualizare mare)
Mai multe după săritură! Continuați să citiți mai jos ↓

Utilități și îmbunătățiri ale terminalelor

Odată ce aveți spațiul de lucru principal, veți dori să-l îmbunătățiți cu diverse instrumente, utilități, teme și așa mai departe. Această secțiune include câteva instrumente utile pentru a vă face experiența cu terminalul mai plăcută.

Oh, Zsh al meu

Oh My Zsh este un cadru open source, condus de comunitate, pentru gestionarea configurației pentru Z Shell (sau Zsh, un shell Unix popular). Vine la pachet cu mii de funcții utile, ajutoare, peste 300 de pluginuri, peste 140 de teme și multe altele. Funcționează cel mai bine pe macOS sau Linux, dar poate fi folosit și pe Windows folosind ceva de genul Cygwin sau WSL2.

Oh, Zsh al meu
(Previzualizare mare)

Smochin

Fig adaugă completarea automată în stil VSCode la terminalul dvs. existent și include suport pentru instrumentele CLI existente, cum ar fi Git, npm, Kubernetes, Docker, AWS, Google Cloud și multe altele.

Smochin
(Previzualizare mare)

fzf

fzf este un instrument de căutare rapid, portabil și neclar pentru linia de comandă, care vă permite să executați interogări de căutare neclare cu un set cuprinzător de caracteristici.

fzf
(Previzualizare mare)

Istoria Shell

Shell History (nu este gratuită) este o aplicație macOS care se integrează cu Bash, Zsh sau Fish și vă permite să faceți backup și să sincronizați cu ușurință prin iCloud și să vă organizați istoricul shell în „notebook-uri”.

Istoria Shell
(Previzualizare mare)

htop

htop este un vizualizator interactiv de proces, inițial numai pentru Linux, dar acum multiplatformă, care își propune să îmbunătățească comanda Linux top prin furnizarea de caracteristici suplimentare atunci când se vizualizează procesele în execuție.

htop
(Previzualizare mare)

CLI GitHub

GitHub CLI, în cazul în care ați ratat-o, este interfața oficială de linie de comandă multiplatformă pentru GitHub, aducând cereri de extragere, probleme și alte sarcini legate de GitHub pe terminalul dvs.

CLI GitHub
(Previzualizare mare)

Streamhut

Streamhut vă permite să vă partajați terminalul în timp real, fără a instala nimic. Pur și simplu rulați una dintre cele două comenzi (în funcție de configurația dvs.), utile pentru sesiuni de terminal live în colaborări în echipă, interviuri sau predare.

Streamhut
(Previzualizare mare)

icdiff

icdiff este un instrument de diferențiere de fișiere bazat pe terminal, care folosește bine culorile pentru a prezenta diferențele într-o manieră mai practică, vizuală.

icdiff
(Previzualizare mare)

>\_TerminalSplash

TerminalSplash , după cum sugerează și numele, este ca Unsplash, dar pentru temele terminale. Alegeți dintre cele peste 200 de teme trimise de utilizatori sau trimiteți-le pe ale dvs.

TerminalSplash
(Previzualizare mare)

Terminalizator

Terminalizer este un înregistrator de terminal personalizabil și multiplatformă care vă permite să înregistrați sesiuni de terminal, apoi să le partajați ca GIF-uri animate sau printr-un player web.

Terminalizator
(Previzualizare mare)

Asciinema

Asciinema este o altă opțiune populară pentru înregistrarea și partajarea terminalului, dar nu este disponibilă pentru Windows. Lucrul tare despre acesta este că ieșirea înregistrată nu este un videoclip, ci o animație cu text simplu a sesiunii de terminal, ceea ce înseamnă că puteți selecta și copia/lipi elemente din înregistrări.

Asciinema
(Previzualizare mare)

gtop

gtop este o altă îmbunătățire a comenzii de top care oferă un tablou de bord de monitorizare a sistemului pentru terminalul dvs. Necesită Node.js și include suport parțial pe Windows.

gtop
(Previzualizare mare)

DevDash

DevDash este un tablou de bord extrem de configurabil pentru dezvoltatori și creatori. Îl puteți personaliza pentru a afișa informații din surse precum Google Analytics, GitHub, Feedly, ieșirea comenzilor shell și multe altele.

DevDash
(Previzualizare mare)

Mentiuni onorabile:

  • ora
    Un spinner terminal elegant.
  • tiny-care-terminal
    Un mic tablou de bord care încearcă să aibă grijă de tine atunci când folosești terminalul.
  • theme.sh
    Un script shell care vă permite să setați tema terminalului care include peste 270 de teme preîncărcate.

Scripturi și cadre din linia de comandă

Unele numeroase biblioteci și cadre vă permit să construiți și să vă întrețineți propriile aplicații și utilitare în linia de comandă. Mai jos veți găsi câteva dintre acestea pentru Bash, JavaScript și multe altele.

Comandă și cucerește (cac)

Command And Conquer, numit și cac, este un cadru JavaScript ușor pentru construirea de aplicații de linie de comandă. De exemplu, a fost folosit pentru a construi mai multe instrumente de schele bazate pe Node.js.

Comandă și cucerește
(Previzualizare mare)

zx

zx este o alternativă populară la Bash de la inginerii Google, care vă permite să scrieți aplicații de linie de comandă folosind JavaScript cu un API ușor de utilizat, care vă permite să apelați executabile și să obțineți rezultate, să gestionați erorile și multe altele.

zx
(Previzualizare mare)

present

present este un instrument de prezentare bazat pe Markdown pentru terminal, care include culori și efecte și vă permite să redați blocuri de coduri redate preînregistrate ca diapozitive.

prezent
(Previzualizare mare)

Bach

Bach este un cadru de testare Bash care poate fi folosit pentru a testa scripturi care conțin comenzi periculoase precum rm -rf / și include, de asemenea, API-uri (de exemplu @mock , @ignore , @mockallto , etc.) pentru a simula comenzile.

Bach
(Previzualizare mare)

CLUI

CLUI este un API JavaScript cu utilități care vă permit să construiți interfețe de linie de comandă cu completare automată în funcție de context în aplicațiile dvs. (adică aplicații asemănătoare terminalelor cu care utilizatorii interacționează).

CLUI
(Previzualizare mare)

ShellCheck

ShellCheck este o extensie shell care vă ajută să găsiți erori în scripturile dumneavoastră shell.

ShellCheck
(Previzualizare mare)

Mentiuni onorabile

  • Basho
    Vă permite să scrieți sarcini shell complexe folosind JavaScript simplu și se combină bine cu comenzile și scripturile shell.
  • import
    Un sistem de module rapid și ușor de utilizat pentru Bash și alte shell-uri Unix.
  • Bash Infinity
    O bibliotecă modulară și ușoară și un cadru standard pentru instrumente de scriere folosind Bash.

Instrumente de productivitate pentru terminal

În cele din urmă, această categorie reunește o mică mostră de utilitare și programe de linie de comandă care ajută la diferite sarcini legate de productivitate, cum ar fi organizarea lucrurilor, partajarea fișierelor și multe altele.

Dash Dash

Dash Dash este un site de documentare online care prezintă paginile de manual Unix (adică paginile de manual) într-un format mai plăcut, pentru a-i ajuta pe cei mai puțin familiarizați cu terminalul să învețe să folosească linia de comandă.

Dash Dash
(Previzualizare mare)

nb

nb este un instrument de linie de comandă cu caracteristici care includ luarea de note pe web local, marcarea de carte, arhivarea și criptarea. Stocarea este în text simplu, include versiuni bazate pe Git, legături în stil wiki, teme de culoare și multe altele.

nb
(Previzualizare mare)

Rclone

Rclone este un program de linie de comandă open-source care vă permite să gestionați fișiere pe peste 40 de servicii de stocare în cloud (Amazon S3, Dropbox, Google Drive, Azure etc.). Include echivalente cloud pentru comenzi Unix familiare și alte caracteristici.

Rclone
(Previzualizare mare)

navi

navi este un instrument interactiv de cheatsheet pentru terminalul tău. În plus față de alte caracteristici, puteți naviga prin depozitele de cheatsheets, importați cheatsheets sau adăugați-le pe ale dvs.

navi
(Previzualizare mare)

Caietul de sarcini

Taskbook este un instrument rapid de linie de comandă care vă permite să organizați sarcini, panouri și note în terminalul dvs., cu funcții precum căutare/filtru, locație de stocare personalizată și o sintaxă simplă și ușor de utilizat.

Caietul de sarcini
(Previzualizare mare)

Explorator de proiecte

Project Explorer este un instrument CLI care vă permite să construiți o vizualizare arborescentă a oricărui proiect. Acest lucru ar fi util atunci când aduceți noi membri ai echipei sau când moșteniți un nou proiect.

Explorator de proiecte
(Previzualizare mare)

transfer.sh

transfer.sh este o aplicație rapidă și ușor de utilizat pentru partajarea fișierelor prin linia de comandă. Include suport pentru servicii precum Amazon S3, Google Drive, Storj și sistemul de fișiere local.

transfer.sh
(Previzualizare mare)

Mentiuni onorabile

  • ack
    Un instrument de căutare a codului, similar cu grep, dar optimizat pentru programatori care caută arbori mari de cod sursă.
  • goto
    Un utilitar shell cu suport de completare automată pentru a naviga la directoare cu alias.
  • bashupload
    Încărcați fișiere (până la 50 GB) prin linia de comandă pentru a partaja cu ușurință între servere, desktopuri și dispozitive mobile.
  • copyfiles
    Un utilitar de linie de comandă care adaugă funcții suplimentare la copierea fișierelor în terminalul dvs.

Care este instrumentul tău preferat de linie de comandă?

După cum am menționat, aceasta nu a fost menită să fie o listă exhaustivă, ci doar o mare colecție de aplicații și utilități relevante din linia de comandă pe care le-am întâlnit personal în ultimii ani.

Dacă ați construit ceva singur sau dacă există unul pe care îl utilizați în mod regulat care vă îmbunătățește experiența terminalului, nu ezitați să-l lăsați în comentarii!