Linuxの - シェル - 複数のファイルにキーワードを見つけます

https://www.cnblogs.com/xy14/p/11735343.html

1.概要

  1. 複数のファイルの内容を検索します

やって考える2

  1. 目的
    1. 複数のファイルでは、コンテンツを探します
  2. レディ
    1. 単一のファイルに内容を見前
      1. ツール
        1. AWK
          1. 前提
            1. 固定フォーマットのファイルを持っています
            2. 時間必要なフィールドを検索します
          2. # print $0 就一句话, 所以 不要 {} 也可以
            > awk '{if($0 ~ <patter>){print $0}}' <fileName>
        2. グレップ
          1. 前提
            1. この要件はそれほどではありません
          2. > cat <fileName> | grep <pattern> 
    1. 請求
      1. 行を含む、複数のファイルを探す1
      2. そして、中にどの文書を知っています
    2. ファイル

      # 得到 1 2 3 三个文件, 每个文件的内容, 是 1 到 10 
      > seq 1 10 > 1
      > seq 1 10 > 2
      > seq 1 10 > 3
      # 可以用 循环写, 也不难对吧
      > for i in {1..3};do seq 1 10 > ${i};done

1の2アイデア:猫| grepを

  1. コマンド

    > cat * | grep '1'
  2. 結果
    1. 輸出

      1
      10
      1
      10
      1
      10
    2. 感じていません
      1. 1が見つかり
      2. しかし、どのファイルコンテンツの配信を知りません

3.アイデア2:検索| xargsのはgrep

  1. コマンド

    # 不理解 find 的同学, 可以用 ls 代替
    # 我就不怎么理解
    # -name 支持 通配符, 我的目录下只有三个文件, 所以也可以不带
    > find . -type f -name "*" | xargs grep "1"
  2. 結果
    1. 輸出

      1:1
      1:10
      2:1
      2:10
      3:1
      3:10
    2. OK
      1. ファイル名を指定して、ハハ
        1. 得ます

4.アイデア

  1. 思考
    1. 見つけます
      1. 見つけます
        1. 特定のファイルを検索するには
        2. グレップに渡されたファイル名
      2. グレップ
        1. 複数のファイル名を取得
        2. 一つ一つのファイルを見つけます
        3. ショーで、発見
    2. ネコ
      1. ネコ
        1. 流れにすべてのファイルの内容
        2. グレップに広がっていきます
      2. グレップ
        1. ストリームを受信します
          1. ファイル名が失われました
        2. コンテンツを探します
          1. あなただけのコンテンツを見つけることができます
  2. 違い
    1. grepが異なるものを受け入れることができます
      1. パラメータ
        1. パラメータを受信した後、ファイルを検索
      2. ストリーム
        1. に直接流れるストリームを受信した後
        2. ファイル名の失われたので、
    2. 質問1:独自の行番号にgrepを持つのはなぜxargsのが、猫はいないだろうと?
      1. 複数のファイル名の後ろのgrepは、自分自身をもたらします
        1. 場合は、単一のファイルストリームかと
公開された101元の記事 ウォン称賛73 ビュー120 000 +

おすすめ

転載: blog.csdn.net/usstmiracle/article/details/104628338