-1

私のbashスクリプトが次のことをしたい:

たとえば、hello.txt のようなファイルが見つかります。

ファイル内の特定のテキストを検索します。例: hey

見つかった場合は、次のことに進みます。

見つからない場合は、テキストを新しい行に書き、次の作業に進みます。

誰か私にこれのスクリプトを教えてもらえますか?

編集:また、これをさらに連続して実行したいので、時間を節約するのは素晴らしいことです!

4

1 に答える 1

2

まず、あなたのコメントへの返信として:

しかし、私はbashの初心者で、いくつかのチュートリアルを行いましたが、役に立ちましたが、このことを行う方法については説明していません。

次に、おそらく間違ったチュートリアルを行いました。TLDPのBash Beginners Guideが役に立ちます。

私はバッチ(Windows)で長い間働いていました。これにはsedが必要でした。bashにも特別なツールが必要ですか?

はい。ただし、ほとんどの Unix システム (Mac OS X を含む) ではすべて標準です。

誰も答えを与えることができますか?

今日は機嫌がいいので…

grepファイル内のテキストを検索するために使用されます。

echoとリダイレクト ( > >> < |)bashは Windows の場合と同じcmd.exeように機能するため、これらの使用方法は既にご存知でしょう。

#!/bin/bash
...
# The 'if ! grep ...' part is probably the hardest.
if ! grep "hey" "$filename" &> /dev/null; then
    # "hey" was not found - use 'echo' to add it
fi
...

残りは自分で把握する必要があります。

于 2009-07-30T11:19:38.477 に答える