Puncte:-4

Îmi pot crea propriul instrument personalizat de căutare grep?

drapel in

Încercam să găsesc un anumit dispozitiv pe aparatul meu. Așa că am tastat lspci. Acest lucru mi-a oferit o listă mare de articole. Prea mare pentru a vă uita în mod constant pentru a vedea dacă dispozitivul meu este încă atașat sau nu. Așa că am alergat:

lspci | grep nvidia

Acest lucru nu a returnat nimic. Așa că am încercat „Nvidia” și nu am primit nimic și apoi, în sfârșit, am încercat „NVIDIA” și atunci am primit un hit.

Grep pare un instrument minunat, dar are câteva limitări evidente.Este posibil să scriu propria mea funcție de tip de căutare pentru a îndeplini această sarcină și pentru a include toate cazurile în șir?

Dacă da, ar putea cineva să mă îndrume în direcția corectă pentru a învăța cum să fac asta. Chiar dacă este ceva literatură pe care o pot citi pe această temă, ar fi grozav.

Chiar dacă îmi ia o lună, mi-ar plăcea să învăț cum să-mi dezvolt propriul instrument cu această funcționalitate.

Mulțumiri.

TomE avatar
drapel br
Încercați să faceți un „man grep” în terminal pentru a obține instrucțiuni de utilizare. Grep este un instrument foarte puternic. De exemplu, pentru a face ceea ce încercați să faceți, adăugați opțiunea -i pentru a nu ține seama de majuscule și minuscule, astfel: lspci |grep -i nvidia
pLumo avatar
drapel in
Performanță foarte proastă în comparație cu `grep`, dar aceasta funcționează: `grepi(){ shopt -s nocasematch; în timp ce IFS= linie de citire; face [[ "$line" =~ $1 ]] && printf '%s\n' "$line"; terminat;}` --> `lspci | grepi nvidia`. Cu toate acestea, imo, aceasta este o întrebare de programare și, prin urmare, în afara subiectului aici.
Puncte:6
drapel cn

om grep vă va oferi informații despre cum să utilizați grep. The -i opțiunea va face ceea ce căutați: ignora majuscule. Astfel, o comandă

lspci | grep -i nvidia

ar fi preluat NVIDIA.

Dacă doriți să vă creați propriul instrument, o modalitate ușoară este să definiți un alias:

alias „grep=grep -i”

Acest personalizat grep comanda va implica -i opțiune de fiecare dată când alergați grep. După definirea aliasului, comanda dumneavoastră originală ar fi funcționat așa cum ați dorit. Nu este nevoie să vă programați în continuare propriul instrument.

Această definiție de alias este valabilă numai pentru sesiunea curentă. Pentru a activa opțiunea permanent, deschideți ~/.bashrc fișier cu un editor de text și adăugați -i opțiunea în alias definiție care există deja:

alias grep='grep -i --color=auto'

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.