我需要删除所有已编译的数据:
- 目录
build
, - 目录
obj
, - * .so文件。
我写了一个命令
find \( -name build -o -name obj -o -name *.so \) -exec rm -rf {} \;
递归地遍历所有目录并删除我需要的所有内容。
为什么最后会有这样的输出?也许我应该写一个不同的命令。
find: `./3/obj': No such file or directory
find: `./3/build': No such file or directory
find: `./1/obj': No such file or directory
find: `./1/build': No such file or directory
find: `./2/obj': No such file or directory
find: `./2/build': No such file or directory
像这样自动删除是个坏主意。您可以有一个脚本给您应聘者,然后应查看该脚本以确保您没有删除对系统重要或必要的任何内容。您不清楚在哪里运行此程序。如果您只是在用户空间中执行此操作,那么我想它不会造成太大的伤害,但是您应该确保不要在系统区域中意外执行此操作。您绝对想以用户身份运行此类脚本。
—
Faheem Mitha 2014年
@ Kiwy,@ FaheemMitha,该命令将仅用于项目直接性;它不会对那里造成任何伤害。
—
Maksim Dmitriev
find
这样find /search_directory options
omiting搜索目录不是一个好主意