bash - bash find -print 删除结果?
问题描述
编辑:我缩小了问题的范围并更改了标题以反映这一点。
我无法理解为什么find
's 会-print
削减一些结果。
在无打印示例中,它按预期显示。当我们添加-print
选项时,它会删除一些结果。在这种情况下,它削减的结果似乎是build
文件夹中的任何内容,还有src
?
没有print
$ find . -type f -name "*.rs" -or -name "*.dylib"
./target/release/deps/libpaste_impl-f7b2dfa71f5079c3.dylib
./target/release/deps/libderivative-82fe3bf231ffd983.dylib
./target/release/deps/libproc_macro_hack-a11693f905f89c54.dylib
./target/release/deps/libnum_derive-8dd64bf06977ab17.dylib
./target/release/deps/liblewton-7f74c0936a55669b.dylib
./target/release/build/gfx_gl-9371e5933c9b30cd/out/gl_bindings.rs
./target/release/build/glutin-949d080876b75405/out/test_gl_bindings.rs
./target/release/build/glutin-949d080876b75405/out/gl_bindings.rs
./target/release/build/clang-sys-5a62f89d3a7aac29/out/dynamic.rs
./target/release/build/clang-sys-5a62f89d3a7aac29/out/common.rs
./target/release/build/bindgen-90310930123f8d37/out/tests.rs
./target/release/build/khronos_api-6a83e1455caf2a52/out/webgl_exts.rs
./target/release/build/cgmath-2f7f8d69317ede14/out/swizzle_operator_macro.rs
./target/release/build/coreaudio-sys-102943d1a92d8237/out/coreaudio.rs
./target/release/build/gleam-53db59dff8c0c2d5/out/gl_and_gles_bindings.rs
./target/release/build/gleam-53db59dff8c0c2d5/out/gles_bindings.rs
./target/release/build/gleam-53db59dff8c0c2d5/out/gl_bindings.rs
./target/release/build/typenum-fa3bdd92a2254aff/out/consts.rs
./target/release/build/typenum-fa3bdd92a2254aff/out/tests.rs
./target/release/build/typenum-fa3bdd92a2254aff/out/op.rs
./target/release/build/khronos_api-097c24980964af45/out/webgl_exts.rs
./target/release/build/three-e70ffd55e3adc8b9/out/data.rs
./target/debug/deps/libderivative-2f106744ef2c3322.dylib.dSYM/Contents/Resources/DWARF/libderivative-2f106744ef2c3322.dylib
./target/debug/deps/libnum_derive-69c598476fa9ab31.dylib.dSYM/Contents/Resources/DWARF/libnum_derive-69c598476fa9ab31.dylib
./target/debug/deps/libpaste_impl-a70f0a4520e10125.dylib.dSYM/Contents/Resources/DWARF/libpaste_impl-a70f0a4520e10125.dylib
./target/debug/deps/liblewton-502bad4119a8f69a.dylib.dSYM/Contents/Resources/DWARF/liblewton-502bad4119a8f69a.dylib
./target/debug/deps/libproc_macro_hack-55f7753a4ce25bd1.dylib.dSYM/Contents/Resources/DWARF/libproc_macro_hack-55f7753a4ce25bd1.dylib
./target/debug/deps/libproc_macro_hack-55f7753a4ce25bd1.dylib
./target/debug/deps/libpaste_impl-a70f0a4520e10125.dylib
./target/debug/deps/libderivative-2f106744ef2c3322.dylib
./target/debug/deps/libnum_derive-69c598476fa9ab31.dylib
./target/debug/deps/liblewton-502bad4119a8f69a.dylib
./target/debug/build/clang-sys-8c62fd28e328b848/out/dynamic.rs
./target/debug/build/clang-sys-8c62fd28e328b848/out/common.rs
./target/debug/build/khronos_api-d97fe936539cf92d/out/webgl_exts.rs
./target/debug/build/khronos_api-f0e964efb9ead6fb/out/webgl_exts.rs
./target/debug/build/bindgen-e9d8da9bd8e8a49e/out/tests.rs
./target/debug/build/three-f0ac8127d3dafbd5/out/data.rs
./target/debug/build/typenum-0cccc5396cc94b61/out/consts.rs
./target/debug/build/typenum-0cccc5396cc94b61/out/tests.rs
./target/debug/build/typenum-0cccc5396cc94b61/out/op.rs
./target/debug/build/coreaudio-sys-6fcf2f1dc6932dd6/out/coreaudio.rs
./target/debug/build/cgmath-b8a84179fd24b352/out/swizzle_operator_macro.rs
./target/debug/build/gleam-bd168af6fddd9da9/out/gl_and_gles_bindings.rs
./target/debug/build/gleam-bd168af6fddd9da9/out/gles_bindings.rs
./target/debug/build/gleam-bd168af6fddd9da9/out/gl_bindings.rs
./target/debug/build/gfx_gl-a69ffadf539b9028/out/gl_bindings.rs
./target/debug/build/glutin-a350d8c7a6ce351c/out/test_gl_bindings.rs
./target/debug/build/glutin-a350d8c7a6ce351c/out/gl_bindings.rs
./benches/my_benchmark.rs
./src/lib.rs
./src/boid.rs
./src/main.rs
和print
$ find . -type f -name "*.rs" -or -name "*.dylib" -print
./target/release/deps/libpaste_impl-f7b2dfa71f5079c3.dylib
./target/release/deps/libderivative-82fe3bf231ffd983.dylib
./target/release/deps/libproc_macro_hack-a11693f905f89c54.dylib
./target/release/deps/libnum_derive-8dd64bf06977ab17.dylib
./target/release/deps/liblewton-7f74c0936a55669b.dylib
./target/debug/deps/libderivative-2f106744ef2c3322.dylib.dSYM/Contents/Resources/DWARF/libderivative-2f106744ef2c3322.dylib
./target/debug/deps/libnum_derive-69c598476fa9ab31.dylib.dSYM/Contents/Resources/DWARF/libnum_derive-69c598476fa9ab31.dylib
./target/debug/deps/libpaste_impl-a70f0a4520e10125.dylib.dSYM/Contents/Resources/DWARF/libpaste_impl-a70f0a4520e10125.dylib
./target/debug/deps/liblewton-502bad4119a8f69a.dylib.dSYM/Contents/Resources/DWARF/liblewton-502bad4119a8f69a.dylib
./target/debug/deps/libproc_macro_hack-55f7753a4ce25bd1.dylib.dSYM/Contents/Resources/DWARF/libproc_macro_hack-55f7753a4ce25bd1.dylib
./target/debug/deps/libproc_macro_hack-55f7753a4ce25bd1.dylib
./target/debug/deps/libpaste_impl-a70f0a4520e10125.dylib
./target/debug/deps/libderivative-2f106744ef2c3322.dylib
./target/debug/deps/libnum_derive-69c598476fa9ab31.dylib
./target/debug/deps/liblewton-502bad4119a8f69a.dylib
解决方案
发现问题!
原来这是一个范围界定问题。
find . -type f -name "*.rs" -or -name "*.dylib"
评估为
find . \( -type f -name "*.rs" -or -name "*.dylib" \) -print
然而
find . -type f -name "*.rs" -or -name "*.dylib" -print
评估为
find . \( -type f -name "*.rs" \) -or \( -name "*.dylib" -print \)
所以-type f -name "*.rs"
没有与之相关的动作,并且永远不会被打印出来。
如果我理解不正确,请告诉我。
推荐阅读
- python - 尝试从索引数据框中两行范围内的熊猫数据框中查找值
- git - Git 等价于 which/whence
- sql - WHERE DATE_COLUMN = '9999-12-31' 语句导致查询不返回任何结果
- mysql - 为什么简单的 mysql 查询耗时太长?
- javascript - 是否可以更改滑动滑块中的方向垂直滑块?我想同时拥有从上到下和从下到上的选项?
- python - 在 Python 中在冒号前的单词周围添加引号
- php - 如何使用 php 创建具有指定值的文件夹
- json - 从 cmd(命令提示符)运行“jsonlint test.json”,返回 ENOENT:没有这样的文件或目录,errno:-4058
- c# - 使用 C#.net 自动检测 LAN 上的应用程序
- java - 如何阻止演员连续捡起物体?