5.8 watch:监视命令执行情况

watch命令可以以全屏的方式动态显示命令或程序的执行情况。
-n    命令执行的间隔时间,默认为2s
-d    高亮显示命令结果的变动之处
-t    关闭watch命令在顶部显示的时间间隔、命令及当前时间的输出
每隔一秒高亮显示网络链接数的变化情况。
[root@cs6-mini ~]# watch -n 1 netstat -antEvery 1.0s: netstat -ant                                                                Wed May 15 21:17:20 2019Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN
tcp        0      0 10.0.0.100:22               10.0.0.1:11596              ESTABLISHED
tcp        0      0 :::22                       :::*                        LISTEN
tcp        0      0 ::1:25                      :::*                        LISTEN

监测当前目录中lewen.log文件的变化

[root@cs6-mini ~]# echo 12345 >lewen.log
[root@cs6-mini ~]# echo 12345 >>lewen.log    #另外一个窗口[root@cs6-mini ~]# watch cat lewen.log
Every 2.0s: cat lewen.log                                                               Wed May 15 21:18:36 201912345
12345
-t参数不显示标题。
[root@cs6-mini ~]# watch -t cat lewen.log12345
12345

5.9 which:显示命令的全路径

which命令用于显示命令的全路径,我们常用这个命令来查找命令在哪里,which命令查找的范围是PATH环境变量的路径。
which命令用于在PATH环境变量里查找指定的命令。
-a    默认在PATH路径中由前往后查找命令,如果查找到了,就停止匹配。使用-a选项将遍历所有PATH路径,输出所有匹配项
[root@cs6-mini ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@cs6-mini ~]# which date
/bin/date
[root@cs6-mini ~]# which which    #<==如果对指定命令设置了别名,那么使用which功能还将会显示别名的情况。
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'/usr/bin/which
[root@cs6-mini ~]# which cd    #<==Bash内置命令无法使用which。
/usr/bin/which: no cd in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)[root@doit ~]# which -a mysql
/usr/bin/mysql

5.10 whereis:显示命令及其相关文件全路径

whereis命令用于定位指定命令的可执行文件、源码文件及man帮助文件的路径 
2)whereis命令用于在PATH环境变量里查找指定的命令。
-b    查找可执行文件
-s    查找源代码文件
-m    查找man帮助文件
[root@doit ~]# whereis  svn
svn: /usr/bin/svn /usr/share/man/man1/svn.1.gz
[root@doit ~]# whereis -b svn
svn: /usr/bin/svn
[root@doit ~]# whereis -s svn
svn:[root@doit ~]#

Linux工程师工作中用得最多的还是查找命令所在路径,因此which更常用。

5.11 locate:快速定位文件路径

yum  -y install mlocate
Linux系统里有一个名为mlocate.db的数据库文件,这个文件包含系统文件的文件名及对应的路径信息。locate命令查找文件时就不用遍历磁盘,而是直接查找mlocate.db文件,这样可以快速给出结果,但会出现一个问题,如果是新添加的文件,那么mlocate.db文件就没有记录,因此使用locate命令时可以先用updatedb命令更新一下mlocate.db数据库文件。当然,mlocate.db还会由系统自带的定时任务执行updatedb命令定期更新。
2)locate命令用于从数据库中查找指定的命令。
-c     不显示匹配的内容,只显示匹配到的行数
-r     支持基本正则表达式匹配
-i     匹配时忽略大小写
-regex 支持扩展正则表达式匹配
查看数据库

[root@cs6-mini ~]# ll -h /var/lib/mlocate/mlocate.db
-rw-r-----. 1 root slocate 540K May 15 21:38 /var/lib/mlocate/mlocate.db
[root@cs6-mini ~]# cat /etc/cron.daily/mlocate.cron    #<==系统自带的定时任务脚本。
#!/bin/sh
nodevs=$(< /proc/filesystems awk '$1 == "nodev" && $2 != "zfs" { print $2 }')
renice +19 -p $$ >/dev/null 2>&1
ionice -c2 -n7 -p $$ >/dev/null 2>&1
/usr/bin/updatedb -f "$nodevs"

使用通配符查找文件路径

[root@cs6-mini ~]# locate /etc/sh
/etc/shadow
/etc/shadow-
/etc/shells
[root@cs6-mini ~]# locate /etc/sh*
/etc/shadow
/etc/shadow-
/etc/shells
[root@cs6-mini ~]# locate -c /etc/*sh*
21

5.12 updatedb:更新mlocate数据库

updatedb命令可以创建或者更新locate命令使用的数据库。updatedb命令会因定时任务定期(每天)执行。
-U    更新指定目录相关的数据库信息。默认是扫描整个系统,耗时较长,因此可以使用这个参数
-v    显示命令的执行过程
查找文件路径。
[root@cs6-mini ~]# locate pwd
locate: can not stat () `/var/lib/mlocate/mlocate.db': No such file or directory
[root@cs6-mini ~]# updatedb
[root@cs6-mini ~]# locate pwd
/bin/pwd
/etc/.pwd.lock
/lib/modules/2.6.32-754.el6.x86_64/kernel/drivers/watchdog/hpwdt.ko
/sbin/unix_chkpwd
/usr/bin/pwdx
/usr/lib64/cracklib_dict.pwd
/usr/lib64/python2.6/lib-dynload/spwdmodule.so[root@cs6-mini ~]# locate -c pwd
15

[root@cs6-mini ~]# locate lewen.log
/root/lewen.log
[root@cs6-mini ~]# touch lewen20190115
[root@cs6-mini ~]# locate lewen
/home/lewen
/root/lewen.log
/root/lewen.nc
/root/lewen.txt
/var/db/sudo/lewen
/var/spool/mail/lewen
[root@cs6-mini ~]# updatedb -vU /root/
/root/test.txt
/root/fav.jpg
/root/.bashrc
/root/hello.txt
...
[root@cs6-mini ~]# locate lewen
/root/lewen.log
/root/lewen.nc
/root/lewen.txt
/root/lewen20190115  

5.13老男孩逆袭思想:新手在工作中如何问问题不会被鄙视
如果因害怕而不敢问问题,可能会无法完成工作,甚至会失去成长机会;如果随意问问题又可能会被人鄙视,甚至丢掉工作,那么老男孩当初入职是怎么问问题的呢?且看下文:
1)首先问身边的中低运维同事。
因为大家水平相差不会太大,同事可能不会觉得你所问的问题太过简单,也有可能他们也不会,如果能给出解答则更好,就不用去问其他高级运维同事了。
2)如果中低运维同事也不会,再去问身边的高级运维同事,因为中低运维都不会,所以高级运维就不会觉得你的问题太过简单了。
3)如果前面的人都不会,最后再去问领导,首先领导可能不会觉得你的问题过于简单,反而还可能会觉得你爱思考,问的问题很有水平。
通过其他同级或高级别的同事,对你所问的问题进行试水、把关,从而不会给领导留下不好的感觉,切忌有问题不经过思考直接问领导,偶尔一次还可以,次数多了,结果可想而知。
但和技术不太相关,属于公司里的业务问题可以随时问,最好是尽早问。例如:网站业务细节、网站架构、运维文档、运维规范、流程制度等。

5.8-12 watch、which、whereis、locate、updatedb相关推荐

  1. Linux文件搜索命令find、which和whereis应用

    记录:349 场景:在CentOS 7.9操作系统上,使用find命令在指定目录搜索文件,支持精确搜索和模糊搜索:使用which命令搜索一个命令所在的目录和别名信息.使用whereis命令搜索命令所在 ...

  2. shell编程系列7--shell中常用的工具find、locate、which、whereis

    shell编程系列7--shell中常用的工具find.locate.which.whereis1.文件查找之find命令语法格式:find [路径] [选项] [操作]选项 -name 根据文件名查 ...

  3. linux文件查找命令find、which、locate、whereis 和type

    1. find 查找-在目录层次结构中搜索文件 用法: find <指定目录> <指定条件> <指定动作> 指定动作默认为 -print # 当前目录下查找以dat ...

  4. Android 12正式发布:安卓历史最大设计变化、更流畅了!

    大家期待的Android 12终于来了,其实在这之前谷歌已经推出了多个测试版,所以它已经没有那么神秘了. 相比前几代系统来说,Android 12是Android历史上最大的设计变化,引入全新的设计语 ...

  5. Linux下which、whereis、locate、find 命令的区别

    which       查看可执行文件的位置 whereis     查看文件的位置 locate     配合数据库查看文件位置 find      实际搜寻硬盘查询文件名称 1.which 语法: ...

  6. linux 下which、whereis、locate、find文件查找命令的区别[ZT]

    我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索.这些是从网上找到的资料,因为有时很长时间不会用到,当要用的时候经常弄混了,所以放到这里方便使用. which    ...

  7. 一文读懂 12种卷积方法(含1x1卷积、转置卷积和深度可分离卷积等)

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 我们都知道卷积的重要性,但你知道深度学习领域的卷积究竟是什么,又有 ...

  8. 扑克牌中的顺子。从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王可以看成任意数字。

    面试题36:扑克牌中的顺子 1.题目描述 题目:从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的.2~10为数字本身,A为1,J为11,Q为12,K为13,而大.小王可以看成任意数字 ...

  9. Linux 中 which、whereis、locate、find的区别

    Linux 中 which.whereis.locate.find的区别 which whereis locate find 总结 which which [-a] cmdname1 cmdname2 ...

  10. Linux下4个查找命令which、whereis、locate、find的使用与区别

    Linux下查找相关命令主要有以下4个:which.whereis.locate.find. (1)which   [-a]    cmdname1 cmdname2 ...... 作用:locate ...

最新文章

  1. 使用IKE预共享密钥配置IPsec
  2. 数据库mysql表怎么设置外键_如何设置数据库中的外键
  3. 7-39 魔法优惠券 (25 分)(思路加解释 用容器做的)加油兄弟们
  4. Javascript 中的非空判断 undefined,null, NaN的区别
  5. JAVA数组、算法、递归
  6. JProfiler 9.1.1部署及使用
  7. Linux输入子系统学习笔记
  8. Java学习路线图,全套Java基础视频教程
  9. 可变模糊集理论matlab程序,可变模糊集理论的哲学基础
  10. 新商用密码产品认证梳理——检测和认证机构篇
  11. 谷歌插件 axure +去广告插件
  12. linux下载工具,2019年最受欢迎的5款Linux下载管理器
  13. 拉结尔6月21日服务器维护,《拉结尔》6月19日换端更新公告
  14. less面试_面试必看:less与sass的区别
  15. STM32的ETR引脚计数功能
  16. thinkpad联想IBM笔记本为什么出现fan error
  17. android7.0 8.1 9.0 10.0 去掉屏幕锁屏(屏幕默认锁屏方式改成无)
  18. Vue之jwt(跨域身份验证,令牌)
  19. php实现对ppt的编辑,在powerpoint中用于对幻灯片内容进行编辑的视图是什么?
  20. python:matplotlib.pyplot绘制散点图(基础一)

热门文章

  1. 如何用python完成评分功能呢_从文件python进行单词分析和评分
  2. jap页面使用ajax动态加载列表数据,JSF - 使用AJAX调用基于DataTable中的mimetype值加载不同形式...
  3. springboot事物注解不生效_SpringBoot攻略三、配置文件说明
  4. 基于python3写的源码剖析_Python 极简插件系统 pluggy 源码剖析
  5. oracle登录账号和密码,oracle 登录账号与密码oracle按照中文排序
  6. java 数组group by_java Group by分组算法
  7. raid卡缓存对硬盘性能_Mac Pro 2019加装2.5英寸机械硬盘方案
  8. 毕业即失业?你到底在焦虑什么
  9. efcore 更新关联表_如何在生产环境下用好EFCore
  10. mysql字段名explain_Mysql中explain用法和结果字段的含义介绍