Linux常用命令

常用系统工作命令

  1. echo 命令 用于在终端输出字符串或变量提取后的值,格式为echo [字符串 | $变量]

  2. date 命令 用于显示及设置系统的时间或日期,格式为date [选项][+指定的格式]

    img

    1
    2
    [root@linuxprobe ~]# date "+%Y-%m-%d %H:%M:%S"
    2017-08-24 16:29:12
  3. reboot 命令 用于重启系统,其格式为 reboot

  4. poweroff 命令 令用于关闭系统,其格式为 poweroff

  5. wget 命令 用于在终端中下载网络文件,格式为wget [参数] 下载地址

    img

  6. ps 命令 用于查看系统中的进程状态,格式为ps [参数]

    img

    img

  7. top 命令 用于动态地监视进程活动与系统负载等信息,其格式为 top

    img

    img

  8. pidof 命令 用于查询某个指定服务进程的 PID 值,格式为pidof [参数][服务名称]

    1
    2
    [root@linuxprobe ~]# pidof sshd
    2156
  9. kill 命令 用于终止某个指定 PID 的服务进程,格式为kill [参数][进程 PID]

    1
    `[root@linuxprobe ~]# kill 2156
  10. killall 命令 用于终止某个指定名称的服务所对应的全部进程,格式为killall [参数][进程名称]

    1
    2
    3
    4
    5
    [root@linuxprobe ~]# pidof httpd
    13581 13580 13579 13578 13577 13576
    [root@linuxprobe ~]# killall httpd
    [root@linuxprobe ~]# pidof httpd
    [root@linuxprobe ~]#

系统状态检测命令

  1. ifconfig 命令 用于获取网卡配置与网络状态等信息,格式为ifconfig [网络设备][参数]

    重点查看的四项信息:网卡名称IP 地址网卡物理地址以及 RX/TX 的收发流量数据大小

    img

  2. uname 命令 用于查看系统内核与系统版本等信息,格式为uname [-a]

    一般加上-a 参数来完整地查看当前系统的内核名称、主机名、内核发行版本、节点名、系统时间、硬件名称、硬件平台、处理器类型以及操作系统 名称等信息。

    1
    2
    [root@linuxprobe ~]# uname -a
    Linux linuxprobe.com 3.10.0-123.el7.x86_64 #1 SMP Mon May 5 11:16:57 EDT 2017 x86_64 x86_64 x86_64 GNU/Linux

    如果要查看当前系统版本的详细信息,则需要查看 redhat-release 文件,其命令以及相应的结果如下:

    1
    2
    [root@linuxprobe ~]# cat /etc/redhat-release
    Red Hat Enterprise Linux Server release 7.0 (Maipo)
  3. uptime 命令 用于查看系统的负载信息,格式为 uptime

    • 显示当前系统时间、系统已运行时间、启用终端数量以 及平均负载值等信息。平均负载值指的是系统在近 1 分钟、5 分钟、15 分钟内的压力情况(即 top 命令的第一行)
    • 负载值越低越好,尽量不要长期超过 1,在生产环境中不要 超过 5
  4. free 命令 用于显示当前系统中内存的使用量信息,格式为free [-h]

    1
    [root@linuxprobe ~]# free -h

    img

  5. who 命令 用于查看当前登入主机的用户终端信息,格式为who [参数]

    1
    [root@linuxprobe ~]# who

    img

  6. last 命令 用于查看所有系统的登录记录,格式为last [参数]

    img

  7. history 命令 用于显示历史执行过的命令,格式为history [-c]

    • 使用-c 参数则会清空所有的命令历史记录。
    • 可以使用!编码数字的方式来重复执行某一次的命令。
  8. sosreport 命令 用于收集系统配置及架构信息并输出诊断文档,格式为 sosreport

工作目录切换命令

  1. pwd 命令 用于显示用户当前所处的工作目录,格式为pwd [选项]
  2. cd 命令 用于切换工作路径,格式为cd [目录名称]
  3. ls 命令 用于显示目录中的文件信息,格式为ls [选项][文件]

文本文件编辑命令

  1. cat 命令 用于查看纯文本文件(内容较少的),格式为cat [选项][文件]

  2. more 命令 用于查看纯文本文件(内容较多的),格式为more [选项]文件

  3. head 命令 用于查看纯文本文档的前 N 行,格式为head [选项][文件]

    1
    [root@linuxprobe ~]# head -n 20 a.txt
  4. tail 命令 用于查看纯文本文档的后 N 行或持续刷新内容,格式为tail [选项][文件]

    tail 命令强悍的功能是可以持续刷新一个文件的内容,当想要实时查看新日志文件时,这特别有用,此时的命令格式为tail -f 文件名

    img

  5. tr 命令 用于替换文本文件中的字符,格式为tr [原始字符][目标字符]

    1
    [root@linuxprobe ~]# cat anaconda-ks.cfg | tr [a-z][A-Z]
  6. wc 命令 用于统计指定文本的行数、字数、字节数,格式为wc [参数] 文本

    img

  7. stat 命令 用于查看文件的具体存储信息和时间等信息,格式为stat 文件名称

    img

  8. cut 命令 用于按“列”提取文本字符,格式为cut [参数] 文本

    img

  9. diff 命令 用于比较多个文本文件的差异,格式为diff [参数] 文件

    • 使用 diff --brief 命令显示比较后的结果,判断文件是否相同

      1
      2
      [root@linuxprobe ~]# diff --brief diff_A.txt diff_B.txt
      Files diff_A.txt and diff_B.txt differ
    • 使用 diff -c 命令来描述文件内容具体的不同

文件目录管理命令

  1. touch 命令 用于创建空白文件或设置文件的时间,格式为touch [选项][文件]

    img

  2. mkdir 命令 用于创建空白的目录,格式为mkdir [选项] 目录

  3. cp 命令 用于复制文件或目录,格式为cp [选项] 源文件 目标文件

    img

  4. mv 命令 用于剪切文件或将文件重命名,格式为mv [选项] 源文件 [目标路径|目标文件名]

  5. rm 命令 用于删除文件或目录,格式为rm [选项] 文件

  6. dd 命令 用于按照指定大小和个数的数据块来复制文件或转换文件,格式为dd [参数]

    img

  7. file 命令 用于查看文件的类型,格式为file 文件名

打包压缩与搜索命令

  1. tar 命令 用于对文件进行打包压缩或解压,格式为tar [选项][文件]

    img

    1
    2
    [root@linuxprobe ~]# tar -czvf etc.tar.gz /etc
    [root@linuxprobe ~]# tar xzvf etc.tar.gz -C /root/etc
  2. grep 命令 用于在文本中执行关键词搜索,并显示匹配的结果,格式为 grep [选项][文件]

    img

    img

  3. find 命令 用于按照指定条件来查找文件,格式为find [查找路径] 寻找条件 操作

    img

    1
    [root@linuxprobe ~]# find /etc -name "host*" -print

    img

参考文献

《Linux 就该这么学》