如何使用linux获取最近时间更新的行?

如何使用linux获取最近时间更新的行?

下表是mysql数据库表(即select * from users) 我想要使用linux命令的最后更新时间行?

+------------+----------+---------+--------------+--------------+-----------+--------------+--------+------+--------------+
| time       | userid   | groupid | jobs_running | jobs_pending | job_limit | 
+------------+----------+---------+--------------+--------------+-----------+--------------+--------+------+--------------+
| 1476274005 | achandra |         |            4 |            0 |         0 |            
| 1476274793 | akawle   |         |           52 |           48 |         0 |     
| 1476274793 | awle     |         |           56 |           49 |         0 |    
| 1476274799 | awlnbkle |         |           59 |           67 |         0 |  

预期输出:

| 1476274793 | akawle   |         |           52 |           48 |         0 |     
| 1476274793 | awle     |         |           56 |           49 |         0 |    
| 1476274799 | awlnbkle |         |           59 |           67 |         0 |  

答案1

your_command | sort -rn | head -n 1

由于最近的时间一定是最大值

如果your_command是mysql,您还应该使用-B,以获得制表符分隔的输出而不是条形。

答案2

tail -n 1 input.txt

检查man tail该命令的更多详细信息。该命令仅显示文件的最后一行。


编辑 考虑到您添加的信息,您可以尝试以下操作:

tail -f -n 0 input_file.txt

-f对于跟随) 意味着每次在 中添加一些数据时input_file.txt,它都会输出到您运行该命令的终端。-n 0位于此处,以便当您运行该命令时,不会显示任何内容,并且只会显示连续的附加行。

相关内容