我常用的一些linux命令小结

  

之前做过两年的运维,用过很多命令,深切体会到某些linux命令熟练掌握后对效率提升有多大。举个简单的例子,在做了研发后经常会有跑一些数据,对于结果数据的处理,我们的产品同学一般都习惯于用excel做统计,把数据复制到excel里,然后数据分列,排序…………最后得出某些简单的结论,我只需要猫,排序,uniq, awk, grep这几个命令挥手间完成相同的操作。
  

  

这里我总结下我工作这几年用过的一些命令,当然,这里就不提那些vim cd ls mv cp这种简单的命令了,如果你都不会这些命令的话,建议你先学习下。这里命令很多,我只简单列出几个我常用的参数。其实很多命令我也用的不是特别多,这篇文章我也只是希望能让大家知道有这样一个工具,但具体用如果想继续深入了解的话建议查看下手册,部分比较命令我也列出了有些参考资料。

  


  

  

<强> p
  

  

查看系统进程线程,我一般都是用这个命令查看进程pid的,然后用pid做更深入的排查。

  

基本用法
  

  

<代码> ps辅助>   <代码> p - t - p $ {pid}>   

参考资料
  10个重要的Linux ps命令实战

  

<强> pstree
  

  

查看系统进程树,他可以把各个进程之间的关系用树形结构标识出来。

  

基本用法
  <代码> pstree

  

<强>顶部
  

  

查看系统进程线程运行情况,包裹资源的使用情况,系统负载等。我的用法是看下服务器上负载是否很高,然后看具体是哪个进程,哪个线程占用cpu比较多。

  

基本用法
  上面列出所有线程负载信息
  最高- h列出所有线程的负载信息
  最高- h - p $ {pid}列出某个pid下所有线程的负载信息

  

<强>免费
  

  

查看内存及使用情况

  

基本用法
  <代码>

自由   


  

  

<强>猫
  

  

我都是用这个命令查看配置文件,或者是日志文件,但是有点需要注意,猫命令会把整个文件输出到终端了,如果文件内容非常多,建议使用grep进行过滤,或者直接用更少或更多命令。

  

基本用法
  <代码>猫file.txt

  

<强>尾巴
  查看某个文件的尾部,或者查看标准出入的最末尾,默认值显示10行,可以用- n参数来指定输出多少行。

  

基本用法
  尾巴- n 100文件。txt输出最末尾的100行
  tail - f文件。txt随着文件新增,持续输出新增的内容,一般用来看实时日志

  

<强>头
  

  

和尾巴命令很相似,不过头是输出头部内容,个人感觉头远没有尾巴命令用的多。

  

基本用法
  头- n 100文件。txt输出最开始的100行

  

<强>更多
  

  

也是用来查看文件,但更命令只加载一屏的内容,可以向下翻动,因为加载的内容少,所以比猫快多了。

  

基本用法
  <代码>更多file.txt

  少

<强>
  和更多的很像,但是可以上下翻动,感觉少和多只需要少就可以了,完全可以去掉更多啊

  

基本用法
  <代码>少file.txt

  

<强> grep
  这个是我非常常用的一个命令了,尤其是在问题排查的时候,需要用grep从大量的数据中筛选出一些我想要的。grep也支持正则表达式匹配。

  

基本用法
  grep“abc”文件从文件中筛选出包含abc的行。

  

<强> awk
  

  

开头我也说过,这个命令是我最常用的命令之一,比如在文件有多列的时候,我可以用awk输出具体某几列,或者做一些简单的统计求和,求平均值啊,再或者做一下简单的数据格式化。

  

基本用法
  猫数据| awk的{打印$ 1、$ 3 $ 5}的输出第1 3 5列,注意下标是从1开始
  猫数据| awk“{总和+=$ 1}{打印和}’对第一列求和
  猫数据| awk - f ' \ t ' '{打印$ 1、$ 3}'把每行数据按标签分列,并输出1 3列

  

参考资料
  阮一峰awk介绍

  

<强>
  

  

对标准内容做排序,

  

基本用法
  猫|排序把文件里的数据排序,注意是按字典序排的,如果想按数值排,需要能够加- n参数

我常用的一些linux命令小结