【问题标题】:Changing the permissions and owner of the /var/www/html folder using fswatch and xargs使用 fswatch 和 xargs 更改 /var/www/html 文件夹的权限和所有者
【发布时间】:2018-05-08 14:10:43
【问题描述】:

每次我添加/创建或更新此文件夹中的任何新文件或目录时,我都想更改 /var/www/html 文件夹的所有者和权限。

我曾想过为此使用 fswatch 来获取该目录(即 /var/www/html)中发生的事件,现在我可以在每次创建或删除等任何更改时获取更新/删除事件通过命令分别在目录下的文件

fswatch -x /var/www/html

现在,在此事件中,我将输出通过管道传输到 xargs 并在 /var/www/html 目录上执行 chown 和 chmod 命令,但现在在文件删除时 fswatch & xargs 仍然执行 chmod 和 chown 命令并抛出错误 no such目录中的文件很明显,因为该文件已被删除,因此我想知道如何使用 if 条件来检查事件类型(例如仅用于 fswatch 命令的更新事件输出) chmod 和 chown 命令将被触发。

【问题讨论】:

    标签: xargs fswatch


    【解决方案1】:

    我会过滤特定事件,然后将其通过 1 传递给 xargs,例如:

    fswatch -x /tmp | egrep --line-buffered '(Created|Updated)$'| \
       xargs -l1 sh -c 'test -f "$1" && chown some_user:some_group "$1"' --
    

    【讨论】:

      猜你喜欢
      • 2015-08-15
      • 2015-09-26
      • 2014-02-23
      • 2012-01-18
      • 1970-01-01
      • 2016-10-15
      • 2014-08-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多