linux常规命令(一)
一、shell
Shell 终端程序的统称
Bash解释器是多数主流linux的默认终端,它的优点有:
通过上下键调取历史命令;
通过Tab键补全命令或参数或文件名;
强大的批处理脚本;
实用的环境变量功能;
终端提示符:
【用户名@主机名 所在目录】 #表示管理员 $表示普通用户
二、命令格式
命令名称 [命令参数] 命令对象
三者之间空格分隔,字母区分大小写
参数可以用长格式(完整名称),也可用短格式(首字母缩写),分别用 --、-作为前缀
快捷键
Ctrl+C 终止当前进程运行
Ctrl+D 终止输入,断开连接
Ctrl+I 相当于清屏操作
man帮助手册
#格式
man 其他命令名称
三、常用系统工作命令
1、echo
用于在终端设备上输出字符串或变量提取后的值
#格式
echo [字符串][$变量值]
#将字符串输出到终端屏幕
echo linux
#提取变量SHELL的值
echo $SHELL
2、date
用于显示或设置系统的时间与日期
#格式
date [+指定格式]
#查看当前时间
date
#按照格式查看当前时间
date "+%Y-%m-%d %H:%M:%S"
#设置时间
date -s "20220222 22:22:22"
#查看当前属于今年第几天
date "+%j"
3、timedatectl
用于设置系统的时间,一般用于检查、调整时区
#格式
timedatectl [参数]
#设置系统时间
timedatectl set-time 9:30
#设置生效时区
timedatectl set-timezone Asia/Shanghai
4、reboot
用于重启系统,涉及权限,一般用户可能会被拒绝
5、poweroff
用于关闭系统,涉及权限,一般用户可能会被拒绝
6、weget
用于在终端命令中下载网络文件
#格式
wget [参数] 网址
#使用递归下载某网站的所有页面数据及文件,并自动保存到当前路径
wget -r -p http://www.baidu.com
7、ps
用于查看系统中的进程状态
#格式
ps [参数]
#查看所有用户进程
#ef属于标准语法,aux属于BSD语法(区别在于打印的格式)
ps -ef
ps -aux
8、pstree
以树状图的形式展示进程之间的关系
9、top
用于动态监视进程活动及系统负载等信息
第1行:系统时间、运行时间、登录终端数、系统负载(3个数值分别为1分钟、5分钟、15分钟内的平均值,数值越小意味着负载越低)。
第2行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。
第3行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。其中数据均为CPU数据并以百分比格式显示,例如“99.9id”意味着有99.9%的CPU处理器资源处于空闲。
第4行:物理内存总量、内存空闲量、内存使用量、作为内核缓存的内存量。
第5行:虚拟内存总量、虚拟内存空闲量、虚拟内存使用量、已被提前加载的内存量。
10、nice
用于调整进程优先级
#格式
nice 优先级数字 服务名称
#数字取值范围为(-20~19)数字越低,优先级越高
11、pidof
用于查询某个指定服务进程的PID值
#格式
pidof [参数] 服务名称
12、kill
用于终止某个指定pid值的服务进程
#格式
kill [参数] 进程PID
#强制杀死进程
kill -9 进程PID
13、killall
用于终止某个指定名称的服务对应的全部进程
#格式
killall [参数] 服务名称
四、系统状态检测命令
14、ifconfig
用于获取网卡配置与网络状态等信息
#格式
ifconfig [参数][网络设备]
使用ifconfig命令来查看本机当前的网卡配置与网络状态等信息时,其实主要查看的就是网卡名称、inet参数后面的IP地址、ether参数后面的网卡物理地址(又称为MAC地址),以及RX、TX的接收数据包与发送数据包的个数及累计流量(即下面加粗的信息内容)
[root@linuxprobe ~]# ifconfig
**ens160**: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet *192.168.10.10* netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::c8f8:f5c5:8251:aeaa prefixlen 64 scopeid 0x20
ether **00:0c:29:7d:27:bf** txqueuelen 1000 (Ethernet)
RX packets 304 bytes 33283 (**32.5 KiB**)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 91 bytes 11052 (**10.7 KiB**)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 376 bytes 31784 (31.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 376 bytes 31784 (31.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 52:54:00:a2:89:54 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
15、uname
用于查看系统内核版本与系统架构等信息
#完整的查看当前系统的内核名称、主机名、内核发行版本、节点名、压制时间、硬件名称、硬件平台、处理器类型以及操作系统名称等信息:
[root@linuxprobe ~]# uname -a
Linux linuxprobe.com 4.18.0-80.el8.x86_64 #1 SMP Wed Mar 13 12:02:46 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
16、uptime
用于查看系统的负载信息
#显示当前系统时间、系统已运行时间、启用终端数量及平均负载值(1、5、15分钟压力)等信息
[root@linuxprobe ~]# uptime
22:49:55 up 10 min, 1 users, load average: 0.01, 0.19, 0.18
公司购置的硬件设备如果长期处于空闲状态,则明显是种资源浪费,建议负载值保持在1左右,在生产环境中不要超过5就好
17、free
用于显示当前系统中内存的使用量
#格式
free [参数]
#以MB为单位
free -m
#自动缩放到最短的三位数单位,并显示打印输出的单位
free -h
18、who
用于查看当前登入主机的用户终端信息
19、last
用于调取主机的被访记录
20、ping
用于测试主机之间的网络连通性
#格式
ping [参数] 主机地址
# -c 总工发送次数
ping -c 10.10.10.10
21、tracepath
用于显示数据包到达主机时途中经过的所有路由信息
#格式
tracepath [参数] 域名
22、netstat
用于显示如网络连接、路由表、接口状态等网络相关信息
#格式
netstat [参数]
#查询服务端口号
netstat -nap|grep PID
23、history
用于显示执行过的命令历史
#清空命令历史
history -c
默认显示最近1000条记录,自定义设置/etc/profile文件中的HISTSIZE变量值
历史命令会被保存到用户家目录中的.bash_history文件中
24、sosreport
用于手机系统配置及架构信息并输出诊断文档