grep
/Applications/ ディレクトリから開始するプロセスをターゲットにしようとしていますが(終了するために)、私のgrep
コマンドはいくつかの間違ったプロセスを捕捉し続けます。私がここで何を間違っているのか?
$ ps -ef | grep -e '/Applications/' | grep -v grep | awk '{print $8}'
/Library/Application I DON'T WANT THIS
/Library/Application I DON'T WANT THIS
/Applications/Firefox.app/Contents/MacOS/firefox
/Applications/Utilities/Terminal.app/Contents/MacOS/Terminal
/Applications/Notes.app/Contents/MacOS/Notes
ベストアンサー1
アンカーポイント^
(キャレット)を使用して線/フィールドの始まりを示し、コマンドの順序を変更します。
ps -ef | grep -v grep | awk '{print $8}' | grep "^/Applications"
このように、grepは最後に実行され、次の行だけを返します。スタートそして/Applications
。
これとても役に立ちます。