ファイルに特定のパターンが含まれていることを確認しますか?

ファイルに特定のパターンが含まれていることを確認しますか?
#!/usr/bin/expect -f

ps

ps -ef > test.txt

今、test.txtに特定のキーワードがあるかどうかを確認したい場合はどうすればよいですか?

たとえば、「apache」または「fast」です。

ここでif文を使用できますか?それでは、どのように使用しますか?

ベストアンサー1

まず、最初のshebang行は目的のスクリプトではありません。シェルの用途は限定的であると予想される。これはその一つではありません。

最初の行は次のようにする必要があります

#!/bin/bash

あなたの場合

それから

ps -ef > test.txt
grep -e fast -e apache test.txt

この単語を含むすべての行を印刷します。

または、ファイルフェーズへの書き込みをスキップして、次のように1行で実行できます。

ps -ef | grep -e fast -e apache 

編集条件の確認:

ps -ef | grep -e fast -e apache | grep -v grep > dev/null; result=${?}
if [ ${result} -eq 0 ]
then
  echo "Found one or more occurrences of 'apache' and/or 'fast'"
else
  echo "Searched strings were not found"
fi

おすすめ記事