Linux 如何正确使用修剪-d型和f型对修剪有不同的影响?
当我使用Linux 如何正确使用修剪-d型和f型对修剪有不同的影响?,linux,bash,ubuntu,find,gnu,Linux,Bash,Ubuntu,Find,Gnu,当我使用 find . -type f -path ./source/script -prune -o -print; 我在“pruned.”/source/script目录中获取文件 ... ./source/script ./source/script/myapp02.4372d2ea3388.js ./source/script/myapp02.js ./source/script/myapp02.1798d7bc34d2.js ... 但当我使用: find . -path ./so
find . -type f -path ./source/script -prune -o -print;
我在“pruned.”/source/script目录中获取文件
...
./source/script
./source/script/myapp02.4372d2ea3388.js
./source/script/myapp02.js
./source/script/myapp02.1798d7bc34d2.js
...
但当我使用:
find . -path ./source/script -prune -o -type f -print;
省略“删减”目录中的文件:
./generate.py
./readme.txt
./source/class/myapp02/Application.js
./source/class/myapp02/Application.js:75:
./source/class/myapp02/__init__.js
./source/class/myapp02/Application.js~
./source/class/myapp02/theme/Font.js
./source/class/myapp02/theme/Theme.js
./source/class/myapp02/theme/Decoration.js
./source/class/myapp02/theme/Color.js
./source/class/myapp02/theme/Appearance.js
./source/class/myapp02/simulation/DemoSimulation.js
./source/class/myapp02/test/DemoTest.js
./source/translation/readme.txt
./source/index.html
./source/index.html~
./source/resource/myapp02/test.png
./Manifest.json
./config.json
在我看来:
我所看到的唯一区别是-typed
在我的代码-typef
中
这是忽略-prune
并在“pruned”目录中搜索find程序的唯一原因吗
find . -type f -path ./source/script -prune -o -print;
被解释为
find . (-type f AND -path ./source/script AND -prune) OR (-print);
被解释为
find . (-path ./source/script AND -prune) OR (-type f AND -print);
请注意,
-print
和-prune
是计算结果为true的表达式
因此,如果(-path./source/script AND-prune)
为true,则不会计算(-type f AND-print)
,也不会调用-print
。`(-path./source/script和-prune)
适用于/source/script
的所有文件和子目录。这有一些很好的例子:
find . -path ./source/script -prune -o -type f -print;
find . (-path ./source/script AND -prune) OR (-type f AND -print);