zoukankan      html  css  js  c++  java
  • find: `./folder': No such file or directory 错误处理

    这是我正在处理的目录的内容:

    misha@hp-laptop:~/work/c/5$ ls -l
    total 8
    -rw-rw-r-- 1 misha misha  219 May 20 15:37 demo.c
    drwxrwxr-x 2 misha misha 4096 May 20 16:07 folder
    -rw-rw-r-- 1 misha misha    0 May 20 16:06 test

    现在,我想从这个目录中删除文件之外的所有内容。demo.c..下面是我想出的命令:

    find . ! ( -name demo.c -o -name . ) -exec rm -Rf {} ;

    它所做的和你想要做的完全一样(意思是,文件test和目录folder),但同时也会显示以下错误消息:

    find: `./folder': No such file or directory

    因为find./folder作为一个目录,当它第一次读取目录时.,在考虑它是否与find标准或对其执行任何行动。它不知道该操作将删除该目录,因此在执行该操作后,它将尝试下降到该目录以扫描其内容。但是,当它这样做时,目录就不再存在了。

    有多种方法来解决这个问题。还没有提到的是使用-prune行动。这说明find不进入与测试匹配的目录:

    find . ! ( -name demo.c -o -name . ) -exec rm -Rf {} ; -prune
     
  • 相关阅读:
    一本通1621轻拍牛头
    2.23模拟赛
    一本通1618越狱
    P2280 [HNOI2003]激光炸弹
    P4513 小白逛公园
    P2165 [AHOI2009]飞行棋
    P1877 [HAOI2012]音量调节
    P2023 [AHOI2009]维护序列
    P2253 好一个一中腰鼓!
    P2434 [SDOI2005]区间
  • 原文地址:https://www.cnblogs.com/houss/p/11671622.html
Copyright © 2011-2022 走看看