高级指令
1、hostname 指令
- 作用: 操作(读取|操作)服务器的主机名
- 语法1: # hostname (输出完整的主机名)
- 语法2: # hostname -f (输出当前主机中的FQDN)
FQDN:(Fully Qualified Domain Name)全限定域名:同时带有主机名和域名的名称。
2、id 指令
- 作用: 查看用户的一些基本信息(用户id、用户组id、附加组id…)
- 语法1: # id
默认指定显示当前用户的信息 - 语法2: # id 用户名
显示指定用户的id (# id marron)
- 验证
# cat /etc/passwd (查看用户id和组id)
# cat /etc/group (查看gid)
3、whomi 指令
- 作用: 显示当前登录的用户名
- 语法: # whoami
一般用于shell脚本,用于获取当前操作的用户,方便记录日志
4、ps-ef 指令 (重点)
-
作用1: 查看服务器的进程信息
-
语法1: # ps
-
作用2:
-
语法2: # ps -ef
参数含义:
-e: 等价于"-A" 表示列出全部的进程
-f: 显示全部的列(显示全字段)
UID: 执行该进程的用户id
PID: 进程id
PPID: 该进程的父级进程id, 如果一个程序的父级进程找不到,该程序的进程称之为僵尸进程
C: cpu占用率,其形式是百分数
STIME: 该进程的启动时间
TTY: 终端设备, "?"表示该进程并不是由终端发起
TIME: 进程的执行时间
CMD: 该进程的名称或者对应的路径 -
栗子: 得到所有进程中名称为gnome-panel的进程
# ps -ef | grep gnome-pane
注: 至少有1个进程(该进程是搜索时产生的进程)
- 栗子: 查看火狐浏览器的进程
# ps -ef | grep firefox
注: 先查看一次(未打开火狐浏览器),然后再查看一次(打开火狐浏览器)
5、top 指令
- 作用: 查看服务器的进程占的资源
- 语法: top
- 退出:
按下q键 - 参数含义:
PID: 进程id
USER: 该进程对应的用户
PR: 优先级
VIRT: 虚拟内存 (申请的内存)
RES: 常驻内存 (实际使用的内存)
SHR: 共享内存 (和其他进程共同使用的内存)
一个进程实际使用的内存 = 常驻内存(RES) - 共享内存 (SHR)
S: 表示进程的状态 (sleeping, S表示睡眠, R表示运行)
%CPU: 表示内存的占用百分比
TIME+: 执行的时间
COMMAND: 进程的名称或者路径 - 运行top后的快捷键
M: 表示将结果安装内存从高到低降序排列
P: 表示将结果按照CPU使用率从高到低降序排列
1: 当服务器拥有多个cpu的时候,可以使用"1"快捷键来切换是否展示显示各个CPU的详细信息
6、du -sh 指令
-
作用: 查看目录的真实大小
-
语法: # du -sh 目录路径
-
选项含义:
-s: summaries,只显示汇总的大小
-h: 表示以较高可读性的形式进行显示 -
栗子1: 统计"/root/marron111"目录的的实际大小
# du -sh /root/marron111
- 栗子2: 统计"/etc" 目录的实际大小
# du -sh /etc
7、find 指令
-
作用: 用于查找文件
-
语法: # find 路径范围 选项 选项的值
-
选项:
-name: 按照文档名称进行搜索(支持模糊搜索)
-type: 按照文档的类型进行搜索
文档类型: "-"表示文件(在使用 find 的时候需要用f来替换),"d"表示文件夹 -
栗子1: 使用 find 来搜索 httpd.conf
# find / -name httpd.conf
- 栗子2: 搜索 /etc 目录下所有的conf后缀文件
# find /etc -name *.conf
- 栗子3: 统计 /etc 目录下所有conf后缀文件的数量
# find /etc -name *.conf | wc -l
- 栗子4: 统计 /etc/sane.d/ 目录下所有文件的数量
# find /etc/sane.d -type f | wc -l
注: find 可以搜到隐藏文件
8、service 指令(重点)
-
作用: 用于控制软件的 启动/停止/重启
-
语法: # service 服务名 start/stop/restart
-
栗子: 需要启动本机安装的 Apache (网站服务器软件), 其服务名 httpd
# service httpd start
- 栗子2: 查询 Apache 开启的进程
# ps -ef | grep httpd
此处的apache的主进程 id为 3299, 其余的除3311外, 都是3299的子进程
9、kill 指令(重点)
- 作用: 杀死进程
当遇到僵尸进程或者处于某些原因需要关闭进程的时候 - 语法: # kill 进程ID(PID)
- 栗子: 关掉 Apache进程
# ps -ef | grep httpd (找到所有apache进程)
# kill PID (进程ID,第二列的数字)
- 语法2: # killall 进程名称 (不需要提前通过ps去查询)
- 作用2: 杀掉该名称的进程
10、ifconfig (重点)
- 作用: 用于操作网卡相关的指令
- 语法: #ifconfig (获取网卡信息)
- 参数说明:
eth0: 是对外的网络地址
lo: 是本地的回环网络地址
inet addr: 后面紧跟的是 ipv4地址
11、reboot 指令
- 作用: 重新启动计算机
- 语法1: # reboot
- 语法2: # reboot -w (模拟重新,但是不重启,只写关机与开机的日志信息)
12、shutdown 指令
- 作用: 关机 (慎用)
- 语法1: # shutdown -h now (或 #shutdown -h 20:38 “关机提升”)
括号里面的表示指定时间关机 - 栗子: 指定时间关机,查看关机提示
# shutdown -h 20:45 "please save your files"
注:
使用ctrl +c 取消
在centOS 7.0 以后, 可以使用 shutdown -c 取消
13、uptime 指令
- 作用: 输出计算机的持续在线时间 (从开机以来到现在运行的时间)
- 语法: # uptime
14、uname 指令
- 作用: 获取计算机操作系统相关信息
- 语法: # uname (获取操作系统的类型)
- 语法2: # uname -a (获取全部的内容)
- 参数说明:
2.6.32-754.el6.x86_64: 内核的版本
SMP Tue Jun 19 21:16:04 UTC 2018: 系统发行的时间
GUN/Linux: 代表加入了开源GUN计划
15、netstat -tnlp 指令
- 作用: 查看网络的连接状态
- 语法:# netstat -tnlp
- 选项说明:
-t: 表示列出 tcp 协议的连接
-n: 表示将域名转换成ip地址,同时将协议名转换成端口号,来显示输出
-l: 过滤出"state(状态)"列中,值为LISTEN(监听)的连接
-p: 发起连接的进程id和进程名称
16、man 指令
- 作用: manual, 手册 (包含了 Linux 中全部命令手册, 英文)
- 语法: # man 命令 (退出 Q)
- 栗子: 查询cp指令的用法
# man cp