Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 检测unix中的目录更改_Linux_Bash_Unix_Filesystems - Fatal编程技术网

Linux 检测unix中的目录更改

Linux 检测unix中的目录更改,linux,bash,unix,filesystems,Linux,Bash,Unix,Filesystems,如何在UNIX中跟踪特定目录的更改?例如,我启动了一些实用程序,它在执行过程中创建了一些文件。我想知道在一次特定的启动中创建了哪些确切的文件。有什么简单的方法可以获得这样的信息吗?问题是: 我无法在脚本执行后刷新目录内容 使用名称创建的文件,该名称将哈希作为复合部分。无法从脚本中获取此哈希值以用于后续搜索 可能会同时执行多个脚本,我不希望在同一文件夹中看到其他进程创建的文件 请注意,我不想知道目录是否已按规定更改,我需要文件名,理想情况下,这些文件名可以被灰显以匹配特定模式。您需要订阅。您可以使

如何在UNIX中跟踪特定目录的更改?例如,我启动了一些实用程序,它在执行过程中创建了一些文件。我想知道在一次特定的启动中创建了哪些确切的文件。有什么简单的方法可以获得这样的信息吗?问题是:

  • 我无法在脚本执行后刷新目录内容
  • 使用名称创建的文件,该名称将哈希作为复合部分。无法从脚本中获取此哈希值以用于后续搜索
  • 可能会同时执行多个脚本,我不希望在同一文件夹中看到其他进程创建的文件

  • 请注意,我不想知道目录是否已按规定更改,我需要文件名,理想情况下,这些文件名可以被灰显以匹配特定模式。

    您需要订阅。

    您可以使用该命令跟踪启动的命令。

    您应该使用类似FAM、gamin、,或者inotify来检测文件何时被创建、关闭等。

    您可以使用Linux审计系统。以下是一个howto链接:


    您可以使用
    strace-f myscript
    跟踪脚本发出的所有系统调用,并使用
    grep
    过滤创建新文件的系统调用。

    您实际上可以使用
    -e trace=file
    (使用系统调用显示所有文件名)让
    strace
    过滤它自己显示的系统调用。