Yritän oppia komentoriviä paremmin ja mietin, mikä ero näiden kahden komennon välillä olisi.
grep -c ^b example
ja
grep ^b example| cat –n
kommentit
- Tervetuloa Unix ja Linux . Jos haluat oppia komentorivin, paras tapa on kokeilla suorittamalla komennot itse käyttämällä erilaisia syötetiedostoja. Kysymysten tulisi näyttää jonkin verran tutkimustyötä, joten ' d neuvoo tarkistamaan asiaankuuluvat man-sivut selvittämään eri vaihtoehtojen tarkoitus. Mies-sivut eivät ole ' t luettavimpia, jos div id = ”50f7e05252″>
on uusi Unixissa, joten jos sinulla on ongelmia sen ymmärtämisessä, voit muokata tätä kysymystä saadaksesi sen paremmin erityinen (ja hyödyllinen). Katso Kuinka kysyä ja ota rohkeasti tutustua -kiertueeseen .
Vastaa
No , ohjekirjan mukaisesti, grep
:
etsii MALLI jokaisesta TIEDOSTO . Oletuksena
grep
tulostaa vastaavat rivit.
ja -c
lippu:
-c, --count
Estä normaali lähtö; sen sijaan tulostaa vastaavien rivien määrä jokaiselle syötetiedostolle.
Joten, grep -c ^b example
tulostaa mallia vastaavien viivojen määrä (määrä), kun taas grep ^b example
tulostaa viivat itse.
Mitä tulee cat
, se kuvataan
ketjutetaan tiedostoja ja tulostetaan vakiolähtö
ja mitä -n
-lippu tekee:
-n, --number
numeroi kaikki lähtörivit
Annetaan putki eikä tiedostonimet, cat
lukee putkesta, joten lähtö on grep
-lähtö, rivinumeroineen lisätty. Tästä syystä grep ^b example| cat –n
tulostaa kaikki vastaavat rivit numeroituna.
Tämä eroaa grep -n ^b example
-kohdasta, jossa grep
lisää li ne otteluiden numerot. grep
tietää alkuperäisen tiedoston rivinumerot, kun taas cat
näkee vain grep
ja numeroi rivit vastaavasti.
Joten, kun otetaan huomioon syötetiedosto
$ cat example bar foo basf
Meillä on:
$ grep -c ^b example 2 $ grep ^b example |cat -n 1 bar 2 basf $ grep -n ^b example 1:bar 3:basf
Vastaa
Ok-komento:
-
grep -c ^b example
: Anna vastaavien rivien määrä riveille, jotka alkavat kirjaimellab
ja -
grep ^b example | cat -n
: välitä grep-komennon tulos kissakomennolle ja listaa ne rivinumeroilla.-n
pakottaacat
luetteloimaan ne rivien numeroiden kanssa.
Esimerkki :
example.txt sisällöllä:
media sound3 media sound1 media sound2 find sound -type f -name sound[0-9] -printf "media %f\n" > file.txt find sound -type f -name sound[0-9] -exec bash -c "echo media bash >> file.txt" {} \; find sound -type f -name sound[0-9] -exec bash -c "f="{}"; echo media $( basename ${f}) >> file.txt" \;
Tulos (1):
3
Tulos (2):
1 media sound3 2 media sound1 3 media sound2
kommentit
- Kyllä sinun oikeutesi!