【发布时间】:2017-11-11 07:53:10
【问题描述】:
我想实现一个提供以下功能的 shell 脚本程序:
- 它需要一个日志文件作为输入。日志文件包含带有消息标记的日志语句,如下所示。
- 该实用程序列出所有花费超过指定时间的操作。时间从命令行以秒为单位指定。
输入:
#<process id> <date time> <log level> <file name> <line number> <actual message>
1098 2007-02-28 15:23:09 WARN db_util.c 5928 Config file not found, using default values
1098 2007-02-28 15:23:09 INFO db_util.c 5908 Connecting to database
1098 2007-02-28 15:23:17 INFO db_util.c 5908 Connected to database
1098 2007-02-28 15:23:17 ERROR log_test.c 198 Unable to setup our satellite launch system
1098 2007-02-28 15:23:18 INFO log_test.c 198 Reconnecting to launch the satellite
1098 2007-02-28 15:23:21 INFO log_test.c 198 Reconnected. Initialize to launch the satellite.
E. G。如果通过将输入文件作为输入和 2 秒的性能阈值时间来执行实用程序,它应该产生以下输出:
1098 2007-02-28 15:23:09 INFO db_util.c 5908 Connecting to database
1098 2007-02-28 15:23:18 INFO log_test.c 198 Reconnecting to launch the satellite
【问题讨论】:
-
只是为了澄清起见,当下一行出现超过 2 秒时,您正在寻找要打印的行(在此示例中,尽管秒数取决于用户输入)?
-
是的。没错。