如何用PHP实现类似Linux tail命令的功能?
- 内容介绍
- 文章标签
- 相关推荐
本文共计182个文字,预计阅读时间需要1分钟。
1. [代码][PHP] 代码php// 监控文件变化,可以通过tail、inotify来实现,也可以通过awk转换变化的内容到外部命令中。
// 使用tail监控文件$filename=/path/to/your/file;exec(tail -f $filename, $output, $return_var);if ($return_var===0) { foreach ($output as $line) { echo $line; }}
// 使用inotify监控文件exec(inotifywait -m -e modify $filename, $output, $return_var);if ($return_var===0) { foreach ($output as $line) { echo $line; }}
// 使用awk转换变化的内容到外部命令中exec(awk '{print $0}' $filename, $output, $return_var);if ($return_var===0) { foreach ($output as $line) { echo $line; }}
监控文件变化,可以通过tail,inotify来实现,也可以通过awk转发变化的内容到外部命令中。下面是通过popen来调用系统命令,性能内存开销相对比较小。
本文共计182个文字,预计阅读时间需要1分钟。
1. [代码][PHP] 代码php// 监控文件变化,可以通过tail、inotify来实现,也可以通过awk转换变化的内容到外部命令中。
// 使用tail监控文件$filename=/path/to/your/file;exec(tail -f $filename, $output, $return_var);if ($return_var===0) { foreach ($output as $line) { echo $line; }}
// 使用inotify监控文件exec(inotifywait -m -e modify $filename, $output, $return_var);if ($return_var===0) { foreach ($output as $line) { echo $line; }}
// 使用awk转换变化的内容到外部命令中exec(awk '{print $0}' $filename, $output, $return_var);if ($return_var===0) { foreach ($output as $line) { echo $line; }}
监控文件变化,可以通过tail,inotify来实现,也可以通过awk转发变化的内容到外部命令中。下面是通过popen来调用系统命令,性能内存开销相对比较小。

