Pamata filtrēšana ar grep

Viena no komandām, kuru es visvairāk izmantoju terminālā, ir grep, pat vairāk nekā cd o ls.

grep Tam ir daudz iespēju un tas piedāvā dažādas iespējas, tomēr es izmantoju pēc iespējas parastāku veidu, bet sāksim ar skaidrojumu Kas ir grep?

grep ir vienkārši filtrs, tā ir komanda, kas parāda rindas, kas atbilst mūsu deklarētajam filtram.

Piemēram, mūsu sistēmā mums ir fails / usr / share / doc / bash / FAQ un šī faila saturs ir:

Skatīt faila saturu

Ja vēlaties ar komandu uzskaitīt termināla saturu kaķis (jā kaķis, tāpat kā kaķis hehe) viņi to var:

cat /usr/share/doc/bash/FAQ

Pieņemsim, ka mēs vēlamies uzskaitīt tikai tā faila rindu, kurā runā par versiju, šim nolūkam mēs izmantojam grep:

cat /usr/share/doc/bash/FAQ | grep version

Ievietojot to terminālā, tiks parādīta tikai tā rinda, kurā šajā failā ir “versija”, tā vairs nerādīs nevienu rindu, kurā nebūtu šī vārda.

Ko darīt, ja es vēlos parādīt visu, izņemot versijas līniju?

Tas ir, tā, kā es jums paskaidroju, tiks parādīts viss, kas atbilst filtram, tagad es jums parādīšu, kā padarīt visu redzamu izņemot kas atbilst filtram:

cat /usr/share/doc/bash/FAQ | grep -v version

Vai pamanāt atšķirību? ... vienkārši pievienojot -v tam jau ir atšķirība 😀

Tātad, ja viņi ieliek grep tas parādīs tikai to, kas atbilst filtram, bet, ja jūs to ievietojat grep -v tas jums parādīs visu, izņemot filtru.

Nu, šeit beidzas ieraksts, tikai vēl viens padoms, ka tagad viņi varbūt to var mazināt, bet ... viņiem nav ne jausmas, cik grep var būt noderīgs, tas ir nopietni glābējs 😀

Sveicieni


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.

  1.   DMoZ teica

    Neapšaubāmi ļoti daudzpusīga komanda, kad jūs iemācāties to apstrādāt, tā atvieglo jūsu dzīvi =) ...

  2.   Skalibura teica

    Sveiki! .. .. tiešām ļoti noderīga komanda .. manā gadījumā es to izmantoju diezgan daudz ..

    Vienkāršs piemērs varētu būt, piemēram, dpkg -l | grep 'package' (ja distros ir debian), tas tiek izmantots, lai uzzinātu, vai šī pakotne ir instalēta.

    Lieliski, ka dāvājam šos rīkus visai mūsu sabiedrībai 😉

    1.    KZKG ^ Gaara teica

      Liels paldies 😀
      Patiešām, grep ir tikpat spēcīgs kā mūsu iztēle hahahaha, kopā ar awk (un cut) viņi patiešām rada brīnumus * - *

      Drīz es ievietošu vēl pāris padomus par termināļa darbu 😉
      Sveiciens un paldies par jūsu komentāru.

      PS: Jūsu e-pasts ir interesants LOL !!

  3.   Hexborg teica

    Ļoti labi!! Jā. Protams, grep ir viens no glābējiem visiem, kam patīk izmantot termināli. Tikai daži punkti: jums patiešām nav vispār jāizmanto kaķu komanda. Faila nosaukumu varat ievietot kā grep parametru šādi:

    grep versija / usr / share / doc / bash / FAQ

    Turklāt, pat ja tas nevarētu, vienmēr būtu iespēja novirzīt komandas ievadi, rīkojoties šādi:

    grep versija </ usr / share / doc / bash / FAQ

    Pēdējo var izdarīt ar jebkuru komandu, tāpēc faila nosūtīšanai uz komandas ievadi nekad nav nepieciešams izmantot cat.

    Izmantojot novirzīšanu kaķa vietā, čaula sāk vienu mazāk procesu, tādējādi patērējot mazāk resursu. Tā nav ievērojama atšķirība, bet tiek uzskatīta par labu praksi.

    No otras puses, grep kļūst patiešām noderīgs, izmantojot regulāras izteiksmes ... Ja es gribētu palīdzēt, izveidojot ierakstu par regulārām izteiksmēm, kas man būtu jādara? Vai ir pietiekami pievienot jaunu ziņu no WordPress darbvirsmas?

    1.    KZKG ^ Gaara teica

      Ak, interesanti, es vienmēr pieradu to lietot kopā ar kaķi HAHAHAHA, paldies par padomu 😀

      1.    Hugo teica

        Izmantojot grep, jūs varat arī padarīt filtrus nedaudz mazāk pamata, piemēram:

        grep -B3 -A3 -E -i --color=auto -n "(desde|hacia)?linux(\.)?$" ~/miarchivo.txt

        Esto básicamente muestra las líneas que contienen el término que buscamos (que puede estar en cualquier combinación de mayúsculas y minúsculas), mas las tres líneas anteriores y las tres posteriores, resalta los resultados en un color diferente, pone números de línea a los resultados y permite la habilitación de expresiones regulares extendidas que en este caso permiten buscar en «miarchivo.txt» todas las líneas que terminen con desdelinux, hacialinux o linux a secas (con o sin punto final).

        Starp citu, regulārās izteiksmes piedāvā daudz elastības, un katram labam "geekam", kas aizrauj brīvo programmatūru, vajadzētu iemācīties tos izmantot, hehe.

  4.   Dranjels teica

    Ir iespējams arī izmantot zgrep planšetdatoriem .ta.gz. Tas ir ļoti noderīgi, ja mēs vēlamies pārskatīt vecos žurnālus. Priekā

  5.   Jhon teica

    Sveiki. paldies par amatu. Man gadās, ka, izmantojot grep, vārds, ko es rakstu parādītajās rindās, nekrāsojas. (parasti tas ir šādi) [piemērs: grep cat file.txt]
    parādās līnijas un kaķis, bet kaķis nepagriež noteiktu krāsu, lai to atšķirtu
    (ja jūs to redzat mana uni ccompusā)
    Vai jūs zināt, kā es varētu aktivizēt šo opciju?
    Lūdzu, ja jūs varat man atbildēt. mans e-pasts ir sps-003@hotmail.com

    1.    fdy nb teica

      draugam jāraksta kaķis pēdiņās “cat” vai arī “cat”, kam seko faila nosaukums, kur viņš to vēlas meklēt

  6.   Enrique teica

    Sveiks, draugs, jums ir pilnīga taisnība, jums ir liela noderīguma izjūta. Turpmāk grep es to ievietoju savā iecienītāko komandu sarakstā.
    vēlējumiem

  7.   skanjura teica

    Un kā būtu rādīt darbiniekus, kas filtrēti pēc algas?