Zimmy Asked: 2018-05-30 02:39:52 +0800 CST2018-05-30 02:39:52 +0800 CST 2018-05-30 02:39:52 +0800 CST inotifywait 排除文件类型 772 我在脚本中使用 inotifywait 并想知道是否有办法排除隐藏文件被监视? 我似乎无法确定排除隐藏文件的正则表达式模式。 shell-script inotify 1 个回答 Voted Best Answer ilkkachu 2018-05-30T03:07:33+08:002018-05-30T03:07:33+08:00 我假设您的意思是以点 ( ) 开头的文件名.,您可以忽略它们。问题inotifywait --exclude是该模式似乎与文件的完整路径匹配,因此您需要考虑到这一点。 因此,如果您提供inotifywait目录foo并bar进行观察,则模式将与文件名匹配,例如foo/something, bar/somethingelse。像往常一样在正则表达式中,您需要转义点。 这应该监视当前目录中的所有创建,除了点文件(它是一个正则表达式,所以我们需要转义点): inotifywait -ecreate -m --exclude '^\./\.' . 或者,不太具体,通过查找斜线和点的组合排除任何目录中的点文件: inotifywait -ecreate -m --exclude '/\.' foo bar 当然,如果您正在查看路径的某些部分带有前导点的目录,那将不起作用。它将匹配该路径中的所有内容。
我假设您的意思是以点 ( ) 开头的文件名
.
,您可以忽略它们。问题inotifywait --exclude
是该模式似乎与文件的完整路径匹配,因此您需要考虑到这一点。因此,如果您提供
inotifywait
目录foo
并bar
进行观察,则模式将与文件名匹配,例如foo/something
,bar/somethingelse
。像往常一样在正则表达式中,您需要转义点。这应该监视当前目录中的所有创建,除了点文件(它是一个正则表达式,所以我们需要转义点):
或者,不太具体,通过查找斜线和点的组合排除任何目录中的点文件:
当然,如果您正在查看路径的某些部分带有前导点的目录,那将不起作用。它将匹配该路径中的所有内容。