ファイルを追跡するいくつかのプロセスがあります。ファイルにEOFを作成してトレースプロセスを停止するにはどうすればよいですか?
例えば、
tail -F $HOME/somefile.log
どこかの端末で実行されていますが、どこにいるのかはわかりません。ファイルを追跡するすべてのプロセスがファイルの追跡を停止するようにログファイルにEOFを作成するにはどうすればよいですか?
場合によっては、fifoを追跡します。
mkfifo fivel
tail -f fivel
名前付きパイプにEOFを書き込むと、実際にfifoの後に続くすべてのプロセスが停止/終了する可能性がありますが、通常のファイルにEOFを書き込むと後続のプロセスが停止しない可能性があると思います。
ベストアンサー1
tail コマンドは、通常のファイルで -f と一緒に実行しても EOF で終了しません。明示的により多くのデータを待ちます。したがって、ファイルの末尾にすでにEOFがあります。終了してはいけませんので、tailは終了しません。
唯一の方法は、尾を殺すことです。走る
ps ax|grep tail
その後、インストールテールプロセスに表示されているプロセスIDを終了します。または使用
pkill tail
すべてのテールプロセスを終了します。終了したくないプロセスを終了する可能性があるため、このオプションを使用するときは注意してください。