如何计算在Linux上执行文件的次数

时间:2019-06-26 13:23:02

标签: linux stat

我有一个可执行文件,我想知道它被执行了多少次。该文件位于网络文件系统上。是否可以使用一种Linux实用程序使用脚本来执行此操作?我的限制是我想避免更改文件本身。例如,我不会添加带有计数器的文件,该计数器将由可执行脚本更新。而且我不会使可执行脚本调用某些API来增加计数器,例如数据库。

1 个答案:

答案 0 :(得分:1)

我不知道如何监视文件的执行情况,但是您可以使用inotify构造文件来监视文件被打开了多少次:

您可能会有这样的脚本:

#! /bin/bash

EXEC_CNT=0
FILE_TO_WATCH=/path/to/your/file
while inotifywait -e open "$FILE_TO_WATCH" 
do 
   ((EXEC_CNT++))
   echo "$FILE_TO_WATCH opened $EXEC_CNT times" 
   # Or to store in a file:
   # echo "$FILE_TO_WATCH opened $EXEC_CNT times" >> "$FILE_TO_WATCH.log"
done

如果是网络共享,则必须在共享其文件系统的计算机上运行此脚本。