Igyekszem jobban megtanulni a parancssort, és kíváncsi vagyok, mi lenne a különbség e két parancs között.

grep -c ^b example 

és

grep ^b example| cat –n 

megjegyzések

  • Üdvözöljük a Unix és Linux . Ha meg akarja tanulni a parancssort, akkor a legjobb módszer az, ha kísérletezel, ha a parancsokat saját kezűleg futtatod különböző bemeneti fájlok segítségével. A kérdéseknek némi kutatási erőfeszítést kell megmutatniuk div id = “50f7e05252″>

d azt tanácsolja, hogy ellenőrizze a vonatkozó man oldalakat, hogy megtudja a különböző lehetőségek célját. A man oldalak nem a div div = = 50f7e05252 “>

legolvasóbbak, ha ' új a Unix szolgáltatásban, ezért ha bármilyen problémája merül fel a megértésével, szerkesztheti ezt a kérdést, hogy még jobb legyen specifikus (és hasznos). Lásd: Hogyan kérdezzek , és nyugodtan vegye fel a túrát .

  • (-1) Még csak nem is ugyanazok a parancsok. Két nem kapcsolódó parancs.
  • Megpróbálta futtatni a parancsokat?
  • Válasz

    Nos a a kézikönyvnek megfelelően, grep:

    a PATTERN kifejezésre keres minden FÁJL ban. Alapértelmezés szerint a grep kinyomtatja az egyező sorokat.

    és a -c flag:

    -c, --count 

    A normál kimenet elnyomása; ehelyett nyomtasson egy sor sorszámot minden bemeneti fájlhoz.

    Tehát a grep -c ^b example kinyomtatja a a mintának megfelelő sorok száma (szám), míg az grep ^b example magukat a vonalakat nyomtatja ki.

    Ami a cat, le van írva, hogy

    összefűzi a fájlokat, és kinyomtatja a szabványos kimenet

    és a -n zászló feladata:

    -n, --number 

    az összes kimeneti sor számozása

    A cső és nem fájlnevek, cat kiolvassa a csőből, így a kimenet a grep kimenete, sorszámokkal. Ezért kinyomtatja az összes egyező sort sorszámozva.


    Ez eltér grep -n ^b example -től, ahol >

    hozzáteszi a li-t a meccsek száma. grep tudja az eredeti fájl sorszámait, míg a cat csak a grep és ennek megfelelően számozza meg a sorokat.

    Tehát, tekintettel a bemeneti fájlra

    $ cat example bar foo basf 

    Megvan:

    $ grep -c ^b example 2 $ grep ^b example |cat -n 1 bar 2 basf $ grep -n ^b example 1:bar 3:basf 

    Válasz

    Ok parancs:

    1. grep -c ^b example: Az b és a

    2. betűvel kezdődő sorok számának megadása grep ^b example | cat -n: adja át a grep parancs eredményét a cat parancsnak, és sorszámokkal sorolja fel őket. A -n arra kényszeríti a cat -t, hogy sorszámokkal együtt felsorolja őket.

    Példa :

    example.txt tartalommal:

    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" \; 

    Eredmény (1):

    3 

    Eredmény (2):

    1 media sound3 2 media sound1 3 media sound2 

    Megjegyzések

    • Igen jogod van!

    Vélemény, hozzászólás?

    Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük