de Caleb Taylor

Cum să codezi ca un hacker în terminal

Ești un hacker. Casa ta este terminalul. Știi că fiecare lovitură cheie este valoroasă. Dacă ceva este mai puțin de 100% eficient, veți petrece ore întregi găsind instrumentul potrivit pentru a vă economisi câteva secunde. Pentru că mereu merită.

Cum sa codezi ca un hacker in terminal
Sursă: Pablo Stanley prin intermediul Stare de nervozitate

Căutarea dvs. constantă de modalități mai noi și mai bune de a face lucruri afectează efectiv lucrurile? Unii pot spune da, dar tu spui nu. Nici o muncă nu merită făcută, cu excepția cazului în care vă puteți lăsa colegii despre motivul pentru care ați reușit să o faceți atât de eficient (timpul de configurare nu este inclus).

Următoarea este o listă de instrumente / caracteristici despre care orice hacker bun ar trebui să știe.

Dislcaimer: Acest articol este scris cu o doză grea de satiră. Este o întorsătură pe Meme „Eu, un intelectual”. Deși sugestiile sunt sincere (și în niciun caz complete), referințele la a fi „hacker” sunt doar pentru distracție.

Shell (zsh)

Dezvoltator mediu: O coajă este o coajă. Nu contează cu adevărat pe care îl folosesc. Toți oricum suge.

Tu, un hacker: Cochilia este esența vieții muncii mele. Pasiunea mea pentru eficiență și caracteristici nu are limite. Shell-ul meu trebuie să fie unul demn de un adevărat hacker.

Locuiești în terminal și de aceea vrei să folosești un shell excelent. De aceea folosești zsh.

Acesta vine cu o serie întreagă de caracteristici:

  • Corectarea automată a comenzilor scrise greșit
  • Înlocuirea ușoară a bash-ului
  • Mai bine cd finalizarea folosind <tab>
  • Extinderea căii: cd /u/c/c/j + <tab> =cd /user/caleb/code/jarvis
  • Mult mai mult

De asemenea, vine cu un cadru excelent pentru gestionarea configurației dvs. zsh: Oh, Zsh. Acesta include peste 200 de pluginuri și peste 140 de teme pentru a adăuga tot felul de funcții minunate la terminalul dvs. Un mic eșantion:

  • git – tone de aliasuri și funcții utile pentru git
  • tmux – alias și setări pentru integrarea zsh cu tmux
  • nodul – adaugă node-docs comandă pentru deschiderea documentelor site-ului web
  • osx – mai multe utilitare pentru lucrul cu OSX
  • cautare pe internet – inițializați căutările web de pe linia de comandă
  • sugestii automate – sugestii rapide, discrete, pe măsură ce tastați pe baza istoricului

Puteți găsi lista completă a pluginurilor aici.

Managementul sesiunii (tmux)

Dezvoltator mediu: Bine, am fișierele deschise pentru lame_project_1. Dar trebuie să lucrez și în boring_project_2. De asemenea, trebuie să intru într-un server și să privesc jurnalele. Cred că voi crea doar o mizerie uriașă în terminalul meu care are fișiere / file din mai multe proiecte deschise într-un mod pe care în cele din urmă voi pierde controlul și voi fi obligat să închid și să o iau de la capăt.

Tu, un hacker: Lucrez la mai multe proiecte simultan, așa că am nevoie de un instrument care să mă ajute să-l mențin organizat. Ar trebui să funcționeze pe mai multe platforme și să îmi permită să creez spații de lucru organizate și să am multe alte caracteristici care ajută la productivitate.

Știi că dezvoltarea poate deveni dezordonată. Uneori, trebuie să lucrați la mai multe proiecte simultan. De aceea folosești tmux.

Vă permite să creați sesiuni. Fiecare sesiune poate fi personalizată în funcție de aspectul exact de care aveți nevoie. Puteți denumi sesiuni pentru comutarea ușoară și chiar salvați și restaura sesiuni dacă terminalul dvs. este închis. În plus, are propria linie de stare personalizabilă, care vă va permite să afișați lucruri precum ora, data, utilizarea procesorului și multe altele. Și dacă nu cunoașteți utilizarea procesorului dvs. la un moment dat, sunteți chiar un hacker?

Cum sa codezi ca un hacker in terminal
Organizați-vă terminalul cu sesiuni și utilizați fzf pentru crearea / găsirea / ștergerea fuzzy a sesiunilor

Are chiar și un manager de pluginuri și a o mulțime de plugin-uri și funcții minunate care va duce hacking-ul la nivelul următor.

Sfat Super-Pro Hacker:
Utilizați tmux cu fzf prin unele scripturi minunate pentru a crea / șterge / naviga rapid pentru a vă împinge nivelul de hacker la peste 9000.

Căutare (ripgrep)

Dezvoltator mediu: Unde am definit acea constantă? Știu că e undeva aici. Voi încerca să-l găsesc. Care sunt argumentele din nou? Lasă-mă să fac asta pe Google. Ah, porcărie, acum îmi caută folderul node_modules. Acesta este cel mai rău.

Tu, un hacker: Când caut ceva, ar trebui să se aprindă rapid. De asemenea, ar trebui să utilizeze setări implicite, cum ar fi ignorarea fișierelor binare sau a fișierelor ascunse.

Știți că căutarea proiectului dvs. este o sarcină obișnuită. Ar trebui să fie rapid și să nu-ți piardă timpul. Acest lucru înseamnă lucruri precum ignorarea a orice .gitignore fișierul ignoră și omite binare și fișiere ascunse. De aceea folosești ripgrep. Este ca grep pe steroizi.

1611778267 6 Cum sa codezi ca un hacker in terminal
ripgrep în acțiune

În cuvintele creatorului său: „Utilizați ripgrep dacă vă place viteza, filtrarea în mod implicit, mai puține erori și suport Unicode.”

Găsirea neclară (fzf)

Dezvoltator mediu: Este cu siguranță greu de reținut locația exactă a atâtea fișiere din cadrul proiectului meu. Cred că mă voi împiedica până o voi găsi pe cea potrivită.

Tu, un hacker: Ar trebui să pot găsi fișiere neclare. Pot tasta numele fișierului sau o parte din cale sau toate acestea și pot găsi rapid fișierul pe care îl caut.

Știți că nu ar trebui să tastați mai mult decât trebuie. Așa că folosești fzf, un instrument de căutare fuzzy de linie de comandă de uz general. De asemenea, poate face mult mai mult decât găsirea de fișiere fuzzy. Poate fi folosit cu orice listă: „fișiere, istoricul comenzilor, procese, nume de gazdă, marcaje, comenzi git etc.”.

Sfat Super-Pro Hacker: Știți că aliasurile sunt o modalitate excelentă de a face comenzi rapide pentru a profita de caracteristicile fzf. De exemplu, dacă doriți să găsiți un fișier neclar și apoi să deschideți selecția în editorul dvs. implicit, îl puteți adăuga în zsh config:

1611778267 288 Cum sa codezi ca un hacker in terminal
Acum puteți rula „fo” fuzzy-find și deschide un fișier

Mai multe exemple pot fi găsite pe fzf wiki.

Prompt terminal (Nava spatiala)

Dezvoltator mediu: Cui îi pasă cum arată promptul terminalului meu? Nu există nicio modalitate de a-mi putea oferi informații utile. Îl voi lăsa ca implicit.

Tu, un hacker: Vreau ca solicitarea mea să fie uimitoare. Ar trebui să fie conștient de context. Ar trebui să-mi ofere informații utile și să fie configurabil. De asemenea, ar fi dulce dacă ar fi legat de spațiu.

1611778267 757 Cum sa codezi ca un hacker in terminal
Bine ați venit în viitor … dar de fapt prezentul. Numai hackeri / astronauți.

Știți că o solicitare trebuie să fie simplă, curată și să furnizeze numai informații relevante. De asemenea, ar trebui să sufle mintea oamenilor atunci când îi văd frumusețea. De aceea folosești prompt de navă spațială. Oferă integrare git / mercurial, indicator de nivel al bateriei, nume inteligent de gazdă și date de utilizator, numere de versiune pentru o varietate de biblioteci, pictograme superbe și multe altele.

Schimbarea directoarelor (z)

Dezvoltator mediu: Trebuie să-mi schimb directorul în proiectul meu „hacker”, care se află în folderul meu cool, care se află în folderul meu personal, care se află în folderul meu de coduri, care se află în directorul meu de acasă.

cd ~/code/personal/cool/hacker

Tu, un hacker: Trebuie să-mi schimb directorul în proiectul meu „hacker”.

z hacker

Introducerea căilor complete de fișiere este ceea ce fac dezvoltatorii obișnuiți. Ești un hacker. Te bazezi pe z. Odată instalat, va începe să învețe ce directoare vizitați. Apoi, îi puteți da o regex (sau un nume de folder simplu) pentru a trece la cel mai probabil candidat.

Instrumente bonus pentru hackeri

Următoarele instrumente sunt modalități suplimentare de a vă ridica cu adevărat jocul de hacking.

  1. wttr.in – Există un singur mod corect de a verifica vremea.
Cum sa codezi ca un hacker in terminal

2. Star Wars – Oameni faini ca Star Wars. Hackerii îl urmăresc în terminal.

telnet towel.blinkenlights.nl
1611778267 860 Cum sa codezi ca un hacker in terminal
Sfat Pro: urmăriți Star Wars într-un alt panou tmux în timp ce lucrați. Nimeni nu te va pune la îndoială.

3. haxor-news – Ești chiar hacker dacă nu citești Știri despre hackeri?

1611778267 306 Cum sa codezi ca un hacker in terminal

4. Spotify – Utilizarea shpotify, puteți reda muzică de la terminal (numai OSX … Hei, nu mai huiduiți! Puneți scaunul jos! Cine a aruncat roșia aia !?), sau mopidy pentru ceva care este multiplataforma.

1611778268 340 Cum sa codezi ca un hacker in terminal
Dumnezeu să binecuvânteze poruncile din terminal

Cam asta o înfășoară. Aceasta nu este în niciun caz o listă cuprinzătoare. Aveți alte instrumente uimitoare de hacker? Lasă un comentariu și anunță-mă.

Dacă sunteți interesat să vedeți mai multe dintre aceste instrumente în acțiune, verificați dotfiles pe care îl folosesc pentru dezvoltare. Ca bonus, iată o captură de ecran a terminalului glorios în acțiune:

1611778269 84 Cum sa codezi ca un hacker in terminal