技术解析

本打算修改所有隐藏文件的组,然而执行的是 chown -R user:user .*
0
2021-07-02 22:33:38
idczone

不是我干的。。。那么问题来了:

1 、如何恢复?现在貌似只能发现问题再改?

2 、怎么选择所有隐藏文件?只查到下面两个可以列出隐藏的文件(非目录)

ls -al | grep '^[^d]'
ls -al | grep '^-'

这个会有什么效果?

修改隐藏文件

上面按到 ctrl+enter 发出去了
修改隐藏文件
find -name '.*' -type f | xargs -n1000 chown -R user:user
排除隐藏文件
find -not -path '*/\.*' -type f | xargs -n1000 chown -R user:user

find 已经递归目录查找了, chown 的-R 参数去掉也行, 我直接复制你的没有去掉。
上面只查找了文件, 如果要把目录也包含进去 去掉 -type f

find 有个-regex 选项。另外配回-type f

你可以 ls -a .* 看看

用-exec 就好了嘛,何必再 pipe


exec 每个文件执行一次 chown 操作, 效率上没有管道加 xargs 高

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服