RPA手把手——常用搜索命令

324 篇文章 27 订阅
136 篇文章 1 订阅

艺赛旗 RPA9.0全新首发免费下载 点击下载

http://www.i-search.com.cn/index.html?from=line1

搜索命令
不管是 Windows 还是 Linux,尽量少用搜索,因为搜索会占用大量的资源,特别是服务器使用高峰时间段
搜索的条件越精准越好
搜索的范围越小越好
文件搜索命令 find
所在路径/bin/find
执行权限:所有用户
格式
find [搜索范围] [匹配条件]
搜索范围:
通常是一个目录
匹配条件(常用的):
-name [文件名]根据文件名搜索
只有文件名完全相同的文件才会被匹配,不会模糊搜索
要想实现模糊搜索,可以使用通配符*,可以匹配任意字符
find /etc -name init 搜索文件名包含 init 的文件
find /etc -name init
搜索以init开头的文件
使用?可以匹配单个字符
find /etc -name init??? 匹配文件名为七字符个并且前面四个为 init 的文件
严格区分大小写!!
-iname 不区分大小写,其他的和-name相同
-size [+/-文件大小]根据文件大小筛选
文件大小单位是一个数据块,即 0.5K(512 字节),使这种方法的时候我们需要换算数据单位
1MB = 2048

  • 文件大小 大于指定大小
    查找大于 100MB 的文件find / -size +204800
  • 文件大小 小于指定大小
    当不加 [+/-] 的时候,表示搜索指定大小的文件,一般不用
    -user [用户名] 根据文件所有者搜索文件
    -cmin [+/- 时间大小], change,搜索指定时间范围内被修改文件属性的文件,默认单位为分钟
    文件属性,就是 ls -l 看见的文件属性
    +表示超过指定时间
    -表示指定时间长度之内
    -amin [+/- 时间大小],access,搜索指定时间范围内被访问的文件
    访问时间
    -mmin [+/- 时间大小],modify,搜索指定时间范围内修改文件内容的文件
    -a,“and”, 用来链接条件,表示两个条件同时满足
    find / -size +204800 -a -size -409600
    -o,“or”, 用来链接条件,表示两个条件满足其中一个
    -exec/ok 命令内容 {};对搜索结果执行 “命令内容” 中的操作
    find /etc -user ziawang -exec ls -l {};使用ls -l查看指定目录下用户名为 ziawang 的文件或目录
    {}表示 find 查找的结果
    \表示转义符
    ;分号表示结束
    -ok会有一个询问确认的步骤
    -type 文件类型,文件类型有三种
    f: 文件
    d: 目录
    l: 软连接文件
    -inum根据文件的 inode 来查询
    应用:如果文件的名称乱码,很难删除这个文件的情况下,使用inode删除文件
    find . -inum 50505 -delete
    注意
    对于名称中包含有空格的文件或目录,如果直接用rm 文件名,这个命令会认为删除了两个文件,这样显然不行,有两种方式来解决这个问题
    对文件名用双引号包含起来
    rm “haha file”
    使用 i 结点删除(每一个文件都必须有一个结点)
    找到文件 i 结点ls -i
    find / -inum 结点号 -exec rm {};
    其他搜索命令
    从文件资料库中查找文件 locate
    类似 Windows 的一个软件 “everything”,这个命令建立了一个文件资料库,这个文件资料库会定时更新,查找时也是在文件资料库中查找,搜索速度非常快
    使用locate locate可以找到这个文件资料库
    这个文件资料库的路径/var/lib/mlocate/mlocate.db
    对于一个新建立的文件。在没有更新到文件资料库的时候,使用locate是找不到的没使用find可以找到
    手动更新资料库

updatedb命令可以更新资料库
注意,文件资料库有一个收录范围,如果我们的新创建的文件不在该收录的路径下,即使创建完文件使用了 updatedb 命令也找不到该文件,比如 /tmp 就不再文件资料库的收录范围内
所在路径:/usr/bin/locate
执行权限:所有用户

格式

locate [-i] 文件名
-i选项不区分大小写
搜索命令所在目录及别名信息 which
所在路径: /usr/bin/which
执行权限:所有用户
格式
which 命令名
搜索命令所在目录以及命令帮助文档的历经 whereis
使用 find 也可以查看命令所在路径,只是速度慢

所在路径:``
执行权限:所有用户
格式
whereis 命令名称
whereis passwd
使用whereis passwd命令的时候,会得到四条结果,如下
[root@host ~]# whereis passwd
passwd: /usr/bin/passwd /etc/passwd /usr/share/man/man1/passwd.1.gz /usr/share/man/man5/passwd.5.gz
这是因为 Linux 系统系有一个名称位passwd的命令,又有一个passwd的配置文件。
/usr/share/man/man1/passwd.1.gz 这样以.1.gz结尾的文件对应的是命令的帮助文件路径
/usr/share/man/man5/passwd.5.gz 以.5.gz结尾的文件对应的则是配置文件对应的帮助文件的路径
因此当我们使用man passwd的时候,得到的将会是命令的帮助文档信息,如果你想要看passwd配置文件的帮助信息,可以这样
man 5 passwd
文件内搜索命令 grep
在文件中搜寻字符串匹配的行并输出
所在路径:/bin/grep
执行权限:所有用户
格式
grep [-iv] [关键词字符串] [文件]
-i不区分大小写
grep -i mysql /root/install.log
-v排除指定字符串
grep -v ^# /root/inittab把行首以注释#开头的行去掉,只看有效的行
grep -i -v e manage.py查看manage.py中不包含e或E的行
可以配合通配符^

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值