博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
find: paths must precede expression Usage: find [-H] [-L] [-P] [path...] [expression]
阅读量:6615 次
发布时间:2019-06-24

本文共 628 字,大约阅读时间需要 2 分钟。

今天在跑脚本的时候看到如下报错:

find: paths must precede expression
Usage: find [-H] [-L] [-P] [path...] [expression]

然后就上网查了一下,结果搜索到一篇,大概是这样说的:多文件的查找的时候需要增加单引号

修改成单引号后,木有再见报错~

例子说明:

[html]
  1. # 进入tmp目录新建4个文本文件  

  2. # cd /tmp  

  3. # touch {1,2,3,4}.txt  

  4. # find . -name *.txt  

  5. find: paths must precede expression: 2.txt  


出现这个提示是因为星号被展开为当前目录下所有的文件,这样的匹配当然会出错。看这个就知道了:


[html]
  1. # echo *  

  2. 1.txt 2.txt 3.txt 4.txt  

  3. # echo '*'  

  4. *  

  5. # echo \*  

  6. *  



想要星号不被展开就需要加上括号或者反斜杠转义,知道了这些我们就知道该怎么find了


[html]
  1. # find . -name '*.txt'  

  2. find . -name '*.txt'  

  3. ./4.txt  

  4. ./2.txt  

  5. ./3.txt  

  6. ./1.txt  

  7. #或者使用反斜杠  

  8. find . -name \*.txt  

     本文转自韩立伟 51CTO博客,原文链接:http://blog.51cto.com/hanchaohan/1405508,如需转载请自行联系原作者
你可能感兴趣的文章
忘记CentOS 7.0 root密码后,更改密码的方法如下
查看>>
迅为嵌入式开发平台4418/6818看门狗教程
查看>>
我的友情链接
查看>>
回来了...
查看>>
SCOM 2012 R2_自动恢复服务脚本
查看>>
离现在的半年内
查看>>
Heartbeat+DRBD+NFS高可用实例配置
查看>>
Linux Iptables 简析
查看>>
设计模式(创建型模式)——工厂方法模式
查看>>
我的友情链接
查看>>
CPU个数、核数、逻辑个数
查看>>
浅谈运维必备技能
查看>>
Go 并发非阻塞缓存
查看>>
过时的广东省教育技术中级培训题答大全
查看>>
happyhbase 基本操作和增量操作
查看>>
JAVA API集
查看>>
开源类型
查看>>
onSaveInstanceState() 什么时候调用
查看>>
双十一高并发场景背后的数据库RDS技术揭秘
查看>>
数据流被污染?数据质量不高?蚂蚁金服数据资产管理平台了解一下
查看>>