Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否尝试过使用unix shell find删除文件?使用-delete选项_Shell_Unix_Find_Command - Fatal编程技术网

是否尝试过使用unix shell find删除文件?使用-delete选项

是否尝试过使用unix shell find删除文件?使用-delete选项,shell,unix,find,command,Shell,Unix,Find,Command,这已经在帖子中出现了很多次,所以我提到它是为了感谢stackoverflow上所有有帮助的人 您是否曾经希望在Unix中从命令行/终端执行一系列删除操作?也许你用了一个类似 find . -name '*.pyc' -exec rm {} \; 查看答案,寻找一种优雅的方法来完成此操作。以下是如何使用-delete选项完成此操作 使用查找命令选项-delete: find . -name '*.pyc' -delete 当然,一定要尝试不使用-delete的试运行,看看是否要删除您想要的内容

这已经在帖子中出现了很多次,所以我提到它是为了感谢stackoverflow上所有有帮助的人

您是否曾经希望在Unix中从命令行/终端执行一系列删除操作?也许你用了一个类似

find . -name '*.pyc' -exec rm {} \;

查看答案,寻找一种优雅的方法来完成此操作。

以下是如何使用
-delete
选项完成此操作

使用查找命令选项
-delete

find . -name '*.pyc' -delete

当然,一定要尝试不使用
-delete
的试运行,看看是否要删除您想要的内容!!!那些电脑真的运行得太快了

+1,感谢您采取主动,亲自找到问题的解决方案。有两个相当小的注释:

我建议您在想要删除文件时养成使用
-typef
标志的习惯。这将
find
限制为实际为文件的文件(即非目录或链接)。否则,您可能会无意中删除一个目录,这可能不是您想要做的。(也就是说,除非您有一个名为'something.pyc'的目录,否则这对您的示例命令来说不会是一个问题。一般来说,这只是一个好习惯。)

另外,为了让您知道,如果您决定使用
-exec rm..
版本,那么如果您这样做,它的运行速度会更快:

find . -type f -name '*.pyc' -exec rm {} \+

此版本将尽可能多的参数添加到
rm
的单个调用中,从而减少对
rm
的调用总数。它的工作原理非常类似于
xargs

中的默认行为。您应该将其分为一个问题和一个答案。此外,请补充一点,即必须进行试运行。find可以找到你不知道自己拥有的东西。这里的用户不仅回答问题,还可以帮助新手更好地使用网站!谢谢,格内特曼!在看了@SLaksYou's welcome!的参考资料后,我编辑了原始帖子!另请参见如果您在没有
-delete
标志的情况下进行试运行,当您准备删除时,请确保将该标志添加到末尾!否则,后面的过滤器标志可能会被忽略。