关于find命令find: paths must precede expression错误的解决方法

本文介绍在Linux环境中使用find命令查找文件的方法,特别是如何正确使用通配符和特殊字符。同时,还提供了grep命令中特殊字符的转义技巧,帮助读者更好地进行文本搜索。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

archermind@flm:~/test/ccl-opencl/jni$ ls *.txt
a.txt  b.txt  c.txt
archermind@flm:~/test/ccl-opencl/jni$ find -iname *.txt
find: paths must precede expression: b.txt
Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec|time] [path...] [expression]
archermind@flm:~/test/ccl-opencl/jni$ 


解决方法:find -iname '*.txt' 或者 find -iname "*.txt"


有时候我们在grep字符串的时候会找不到这个字符串,但是它却是真实存在的
例如
archermind@flm:~/test$ grep -r "d29, d30, d31}, [r5]"
archermind@flm:~/test$
原因是'['好像不能识别为一个字符,所以我们要将它转译为一个字符,这时,我们可以加个转译符\
archermind@flm:~/test$ grep -r "d29, d30, d31}, \[r5"
6432/jni/a.cpp:   "vst3.8          {d29, d30, d31}, [r5]!   \n"
archermind@flm:~/test$


像'['这样的字符还有 '.'
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值