如何在 Linux 中 chmod 和 chown 隐藏文件?

not*_*ere 37 linux chmod chown

如何递归执行chmodchown隐藏文件?

sudo chmod -R 775 * 不适用于隐藏文件。

同样的事情也适用于sudo chown -R user:group.

Joh*_*man 42

如果您还可以修改当前目录,请执行此操作并让我们-R完成繁重的工作。-R不会忽略隐藏文件。

sudo chmod -R 775 .
Run Code Online (Sandbox Code Playgroud)

  • 这个 (`* .*`) 不是最安全的方法。特别是,它会递归到父目录,这意味着它也是当前目录的兄弟。正确的方法是`* ..?* .[^.]*` 或者更好(考虑到通配符可能不匹配任何文件)`$(ls -A)`。 (14认同)

slh*_*hck 37

* 默认情况下不包含隐藏文件,但如果您使用 bash,则可以使用以下命令执行此操作:

shopt -s dotglob
Run Code Online (Sandbox Code Playgroud)

在 bash 的builtin手册中阅读更多关于它的信息:

如果设置,Bash 将包含以“.”开头的文件名。在文件名扩展的结果中。

这也将使*包含隐藏文件。

chmod -R 775 *
Run Code Online (Sandbox Code Playgroud)

禁用它:

shopt -u dotglob
Run Code Online (Sandbox Code Playgroud)

  • 如何在 `zsh` 中做到这一点? (2认同)
  • 您使用 `(D)` 通配符,例如 `chmod -R 775 *(D)` (2认同)