Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
zhangneww
V2EX  ›  Linux

本打算修改所有隐藏文件的组,然而执行的是 chown -R user:user .*

  •  
  •   zhangneww ·
    zhangnew · Aug 16, 2016 · 3475 views
    This topic created in 3635 days ago, the information mentioned may be changed or developed.

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

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

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

    ls -al | grep '^[^d]'
    ls -al | grep '^-'
    
    8 replies    2016-08-17 00:27:07 +08:00
    debiann
        1
    debiann  
       Aug 16, 2016 via iPhone
    这个会有什么效果?
    ToughGuy
        2
    ToughGuy  
       Aug 16, 2016
    修改隐藏文件
    ToughGuy
        3
    ToughGuy  
       Aug 16, 2016   ❤️ 1
    上面按到 ctrl+enter 发出去了

    修改隐藏文件
    find -name '.*' -type f | xargs -n1000 chown -R user:user

    排除隐藏文件
    find -not -path '*/\.*' -type f | xargs -n1000 chown -R user:user
    ToughGuy
        4
    ToughGuy  
       Aug 16, 2016   ❤️ 1
    find 已经递归目录查找了, chown 的-R 参数去掉也行, 我直接复制你的没有去掉。

    上面只查找了文件, 如果要把目录也包含进去 去掉 -type f
    bombless
        5
    bombless  
       Aug 16, 2016 via Android
    find 有个-regex 选项。另外配回-type f
    zhangneww
        6
    zhangneww  
    OP
       Aug 16, 2016
    @debiann 你可以 ls -a .* 看看
    arakashic
        7
    arakashic  
       Aug 17, 2016
    @ToughGuy 用-exec 就好了嘛,何必再 pipe
    ToughGuy
        8
    ToughGuy  
       Aug 17, 2016
    @arakashic

    exec 每个文件执行一次 chown 操作, 效率上没有管道加 xargs 高
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3561 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 04:35 · PVG 12:35 · LAX 21:35 · JFK 00:35
    ♥ Do have faith in what you're doing.