0

1 つの .txt ファイルを検索する必要がありますが、これは単語が 1 行に 2 回出現する場合のみです。したがって、「今日猫に餌をやったところ、猫は幸せでした」というフレーズがあった場合、1 が返されますが、その単語が同じ行に 2 回出現した場合に限られます。ファイル全体の行数が必要です。UNIXでこれを行うためにプログラムパテを使用しています。

4

4 に答える 4

2
grep "cat.*cat" input_file | wc -l

説明:

  • grep: grep とは何ですか?
  • "cat.*cat": この場合、検索するパターン: 文字通りcatの後に が続き.*ます。ピリオド. は「任意の文字に一致する」ことを意味し、星*(0 以上) で数量化されているため、一緒にすると「任意の数の文字に一致する」ことを意味します。文字通り別のcat
  • input_fileへの次の引数grep、「猫を救う」ため (「猫を救う」部分については気にしないでください。ばかげたオタクの冗談 = p)
  • |はUNIXのパイプコマンドで、stdoutgrepから取得しstdin、次のプログラムの...
  • wc -l- 「word count」プログラムを起動し、「line」オプションを使用して行数をカウントします。
于 2013-10-02T19:02:49.453 に答える
2

次のようなものはどうですか:

grep -e "cat.*cat" input | wc -l
于 2013-10-02T19:03:52.060 に答える
1

awk1 つのコマンドで検索してカウントする

awk '/cat.*cat/ {a++} END {print a}' file
于 2013-10-02T19:20:29.740 に答える
0

基本的:

cat.*cat

単語全体を一致させたい場合は、単語境界 (ツールに依存する構文) のアンカーを追加する必要がある場合があります。

于 2013-10-02T19:02:49.953 に答える