• 简单查找操作


    一、which找可执行程序

    1.命令字的检索

    给定一个命令字,Linux从哪里去找对应的指令?

    −别名:alias可查看

    −内部命令:help可查看

    −程序目录:记录在环境变量PATH 中

    1. [root@hadoop ~]# echo $PATH
    2. /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/soft/hadoop/bin:/usr/soft/hadoop/sbin:/usr/soft/hbase/bin:/usr/soft/hive/bin:/usr/soft/jdk/bin:/usr/soft/phoenix/bin:/usr/soft/scala/bin:/usr/soft/spark/bin:/usr/soft/spark/sbin:/usr/soft/sqoop/bin:/root/bin

    2.查找外部程序

    which 工具

    −用法:which [-a] 命令字.. ..

    −从别名及程序目录中查找,但不从内部命令查找

    1. [root@hadoop ~]# which ls cd
    2. alias ls='ls --color=auto'
    3. /bin/ls
    4. /usr/bin/which: no cd in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/soft/hadoop/bin:/usr/soft/hadoop/sbin:/usr/soft/hbase/bin:/usr/soft/hive/bin:/usr/soft/jdk/bin:/usr/soft/phoenix/bin:/usr/soft/scala/bin:/usr/soft/spark/bin:/usr/soft/spark/sbin:/usr/soft/sqoop/bin:/root/bin)
    5. [root@hadoop ~]# which -a reboot
    6. /sbin/reboot

    3.命令字的冲突处理

     4.练习

    检查命令字ls、mkdir、ifconfig的程序文件在哪里

    1. [root@hadoop ~]# which ls mkdir ifconfig
    2. alias ls='ls --color=auto'
    3. /bin/ls
    4. /bin/mkdir
    5. /sbin/ifconfig

    尝试检查命令字cd、help 的可执行文件,解释执行结果

    cd、help是内部命令

    1. [root@hadoop ~]# which cd
    2. /usr/bin/which: no cd in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/soft/hadoop/bin:/usr/soft/hadoop/sbin:/usr/soft/hbase/bin:/usr/soft/hive/bin:/usr/soft/jdk/bin:/usr/soft/phoenix/bin:/usr/soft/scala/bin:/usr/soft/spark/bin:/usr/soft/spark/sbin:/usr/soft/sqoop/bin:/root/bin)
    3. [root@hadoop ~]# which help
    4. /usr/bin/which: no help in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/soft/hadoop/bin:/usr/soft/hadoop/sbin:/usr/soft/hbase/bin:/usr/soft/hive/bin:/usr/soft/jdk/bin:/usr/soft/phoenix/bin:/usr/soft/scala/bin:/usr/soft/spark/bin:/usr/soft/spark/sbin:/usr/soft/sqoop/bin:/root/bin)

    将命令uname复制为/root/un ,如何才能执行un 程序

     

    二、locate找文档

    1.建立文档索引库

    updatedb工具

    −记录当时Linux中所有文档的路径

    −删除/增加文档以后,需要重新updatedb,才能反映到索引库

    −默认位置:/var/lib/mlocate/mlocate.db

    2.根据索引库查找文档

    locate 检索工具

    −用法1(文档路径包含):locate 关键词

    −用法2(文件名包含):locate -b 关键词

    −用法3(文件名=关键词):locate -b '\关键词'

    3.locate应用示例

    任务目标

    −找出存放位置或名称中包含passwd关键词的所有文档

    −选项-c 可获取匹配结果数

    1. [root@hadoop ~]# locate passwd #命令没有安装
    2. -bash: locate: command not found

    安装locate命令,最后出现complete才成功

    1. [root@hadoop ~]# yum install mlocate
    2. base | 3.7 kB 00:00
    3. extras | 3.4 kB 00:00
    4. updates | 3.4 kB 00:00
    5. Setting up Install Process
    6. Resolving Dependencies
    7. --> Running transaction check
    8. ---> Package mlocate.x86_64 0:0.22.2-6.el6 will be installed
    9. --> Finished Dependency Resolution
    10. Dependencies Resolved
    11. ========================================================================================================================
    12. Package Arch Version Repository Size
    13. ========================================================================================================================
    14. Installing:
    15. mlocate x86_64 0.22.2-6.el6 base 86 k
    16. Transaction Summary
    17. ========================================================================================================================
    18. Install 1 Package(s)
    19. Total download size: 86 k
    20. Installed size: 279 k
    21. Is this ok [y/N]: y
    22. Downloading Packages:
    23. mlocate-0.22.2-6.el6.x86_64.rpm | 86 kB 00:00
    24. Running rpm_check_debug
    25. Running Transaction Test
    26. Transaction Test Succeeded
    27. Running Transaction
    28. Installing : mlocate-0.22.2-6.el6.x86_64 1/1
    29. Verifying : mlocate-0.22.2-6.el6.x86_64 1/1
    30. Installed:
    31. mlocate.x86_64 0:0.22.2-6.el6
    32. Complete!

    更新数据库

    [root@hadoop ~]# updatedb
    
    1. [root@hadoop ~]# locate passwd #模糊匹配
    2. /etc/passwd
    3. /etc/passwd-
    4. /etc/pam.d/passwd
    1. [root@hadoop ~]# locate -b '\passwd'
    2. /etc/passwd
    3. /etc/pam.d/passwd
    4. /usr/bin/passwd
    5. [root@hadoop ~]# locate -c passwd;locate -bc '\passwd'
    6. 116
    7. 3

    4.练习

    为当前主机系统建立locate索引库

    [root@hadoop ~]# updatedb
    

    列出系统中名称为passwd或者以hosts开头的所有文件

    1. [root@hadoop ~]# locate -b '\passwd'
    2. /etc/passwd
    3. /etc/pam.d/passwd
    4. /usr/bin/passwd
    5. [root@hadoop ~]# locate -b '\hosts'
    6. /etc/hosts

    新建文件/opt/new.txt,更新索引库再使用locate查找此文件

    1. [root@hadoop ~]# touch /opt/new.txt
    2. [root@hadoop ~]# updatedb
    3. [root@hadoop ~]# locate -b '\new.txt'
    4. /opt/new.txt

  • 相关阅读:
    吴恩达2022机器学习专项课程(一) 6.3 决策边界&第三周课后实验:Lab3决策边界
    AI项目二十三:危险区域识别系统
    斩获 offer 的 Java 面试宝典
    2022年C++面试题万余字汇总【面试官常问】
    从零开始编写自己的 C++ 软渲染器(一) 线与三角形的绘制
    《计算机视觉中的多视图几何》笔记(14)
    辉芒微IO单片机FT60F021-RB
    矩阵论习题1.1
    东北天坐标系与84坐标系的相互转换
    数据分析入门
  • 原文地址:https://blog.csdn.net/m0_55834564/article/details/126316870