符号

生成序列:{} 例:{01…05} 生成01 02 03 04 05

vim中强制:!

当前路径:.

转义符号:\

识别变量:$

输入多条命令:;

使程序在后台运行:&

将前一个命令获取到的内容交给后面命令处理:|

清除文件内容:> (直接写>)

将内容追加到文本中:>>

将命令执行结果写到文本中(包含错误信息):2>>

程序执行后获取返回值:echo $?

反引号内部命令可被反引号外部加载:“(例:/backup/server-`date +%F`)

快捷键

剪切光标前面的内容:Ctrl+u

剪切光标前面的内容:Ctrl+k

粘贴:Ctrl+y

清屏:Ctrl+L

登出:Ctrl+d

锁屏:Ctrl+s

解锁:Ctrl+q

调取曾经输入过的命令:Ctrl+r

常用工具

网络工具:net-tools

端口扫描:nmap

查看目录层级:tree

常用文件

网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-ens33

DNS配置文件:/etc/resolv.conf

Host配置文件:/etc/host

主机名配置文件:/etc/hostname (改完重启)

环境变量:

​ 全局配置文件:/etc/profile /etc/bashrc

​ 局部配置文件:~/.bash_profile ~/.bashrc

用户登录终端后现实的文件:/etc/motd

查看系统版本:/etc/redhat-release

远程连接后系统自动运行的脚本文件:/etc/profile.d

软件安装默认目录:/usr/local或/opt

系统默认运行日志文件:/var/log/messages

硬件信息:

​ cpu:/proc/cpuinfo(或lscpu)

​ 内存:/proc/meminfo(或free -h)

​ 系统负载:/proc/loadavg(或uptime)

服务管理

– ### 服务启动

​ RPM包方式:

​ 启动服务:systemctl start 服务名

​ 开机自启:systemctl enable 服务名

​ 查看服务状态:systemctl status 服务名

​ 查找服务名:systemctl list-unit-files –type=service/ntsysv

​ 修改启动文件:vi /etc/rc.local

系统命令

创建文件夹:mkdir (-p递归创建-m设置权限-v显示创建过程)

创建文件:touch (-a更改文件最后访问时间)

复制:cp [指令] [源文件] [目标文件] (-p复制时保持源文件的信息-r递归复制目录下所有层级的文件-i覆盖文件前提示用户确认-t颠倒源文件目标文件顺序)

剪切:mv

回写:echo [指令] [内容] (-n不自动换行-E不解析转义符默认)

​ -e:若出现以下字符,需进行特别处理,而不会将它当成一般文字输出

​ \a:发出警告声

​ \b:删除前一个字符

​ \c:最后不加换行符号

​ \f:换行但光标仍停留在原来位置

​ \n:换行且光标移至行首

​ \r:光标移至行首但不换行

​ \t:插入tab

​ 管道符新指令接收内容:–stdin

进入目录:cd

查看文件(全部显示):cat (-n查看行号-b查看行号但忽略空白行-s遇到连续两行以上空白则替换为一行空白-E在每一行尾显示$符)

向某文件写入内容:cat > 文件名 <权限

![1721054429511](C:\Users\cuixi\AppData\Roaming\Typora\typora-user-images\1721054429511.png)

| 类型 | 字符标识 | 数值标识 |
| —— | ——– | ——– |
| 读 | r | 4 |
| 写 | w | 2 |
| 执行 | x | 1 |
| 无权限 | – | 0 |

修改权限:chmod [选项] [模式] [文件] (选项-R递归处理)

修改权限(增加减少):chmod [ 用户类型] [+|-|=] [权限标识] [文件] (u属主g属组o其他a或不写代表三个用户统一设置)

修改属组属主:chown [选项] [用户或:用户组] [文件]

文件锁定:chattr +i [文件]

解锁文件:chattr -i [文件]

查看文件是否上锁:lsattr [文件]

系统用户

管理用户:uid=0 (root)

虚拟用户:uid=1-999(每个程序进程都需要一个用户和用户组管理,虚拟用户无法登录系统)

普通用户:uid=1000+

系统用户相关配置文件:

​ /etc/passwd:存储用户信息的文件

​ /etc/shadow:存储用户密码信息的文件

passwd文件说明

| root | :x | :0 | :0 | :root | :/root | :/bin/bash |
| —— | ——– | ——- | ——— | ——– | ———- | ———– |
| 用户名 | 用户密码 | 用户UID | 用户组GID | 用户说明 | 用户家目录 | shell解释器 |

用户相关命令

| 命令 | 解释 |
| —————- | ———————————————————— |
| useradd | 添加用户信息 |
| usermod | 修改用户信息 |
| userdel | 删除用户(-f强制删除-r删除家目录) |
| passwd | 设置或修改密码 |
| chpasswd | 批量更新用户密码 |
| chage | 修改用户密码属性 |
| id | 查询用户对应的uid信息 |
| whoami | 查看当前登录的用户 |
| w | 显示已登录用户并展示用户在做什么操作 |
| ps -ef\|grep pts | 查看已连接用户的连接进程 |
| | 切换用户 |
| visudo | 用户提权(该命令等同于vim /etc/sudoers)例:用户 ALL=(ALL) /usr/sbin/useradd(给其他用户新建用户的权限)(提权后普通用户需使用sudo) |
| sudo -l | 查看当前用户的权限 |

文件操作

查看文件时间:stat

| 属性 | 解释 |
| —— | ———— |
| modify | 文件修改时间 |
| access | 文件访问时间 |
| change | 文件改变时间 |

查看系统时间:date

设置系统时间:date -s “20240723 20:26:05”

系统时间自动同步:timedatectl set-ntp 1(需开启systemctl start chronyd需调整时区set-timezone)

系统时间自动同步:ntpdate (需安装)

系统进程

​ 僵尸进程:子进程处理任务时异常退出,父进程没有回收子进程的资源,会导致子进程运行实体小时但仍在内核进程表里占据一条记录
​ 孤儿进程:子进程处理任务时父进程退出而子进程没有退出则由系统的systemd来管理

查看当前进程状态
静态进程查看ps:只查看某一时间段的进程运行情况

| 参数 | 解释 |
| —- | ——————————– |
| -a | 显示所有终端下执行的程序 |
| -A | 显示系统中存在的所有程序信息 |
| -u | 显示进程管理的用户信息 |
| -x | 显示所有程序包含系统的进程 |
| -e | 和-A指令相同 |
| -f | 显示更加详细的信息包含PID,PPID等 |

注:以上结果中TTY为?时代表系统运行的进程
注:[]代表系统进程
常用:ps -aux

STAT字段解释

| R | 可以被CPU调度加载的执行或运行状态 |
| —- | ————————————- |
| S | 将进程进行中断和睡眠挂起的状态 |
| T | 表示进程出去暂停状态或跟踪状态 |
| D | 不可中断睡眠状态 |
| Z | 僵尸状态 |
| s | 控制进程,Ss进程的领导者,即父进程 |
| < | 高优先级,S<表示优先级较高 | | N | 低优先级,SN表示优先级较低 | | + | 进程运行在前台,R+表示该进程在前台运行 | | l | 多线程进程,Sl表示进程是以线程方式运行 | 动态进程查看pstree:实时监控进程信息占用资源的情况 注:如无该命令需先安装psmisc | 参数 | 解释 | | ---- | ---------------------------------------- | | -a | 显示启动每个进程对应的完整指令 | | -c | 显示进程中包含子进程和父进程 | | -h | 列出树状图时,标明现在执行的程序 | | -n | 根据进程PID排序输出,默认为程序名排序输出 | 查看当前动态进程状态top:实时显示系统中各个进程的资源占用 | 参数 | 解释 | | ---- | ------------------------------------------------------- | | -d | 改变显示的更新速度 | | -i | 不显示任何闲置或无用的进程 | | -n | 更新的次数,完成后会推出top | | -b | 批次归档模式,搭配-n一起使用可以用来讲输出结果放到文件内 | 常见指令(快捷键) | 指令信息 | 解释 | | -------- | ---------------------------------- | | l | 显示所有cpu核心的负载,默认显示平均 | | z | 高亮显示数据信息 | | b | 高亮显示处于R状态的进程信息 | | M | 按照内存使用百分比输出 | | P | 按照CPU使用百分比输出 | | q | 退出top动态监控 | 终止进程:kill [参数] [进程号] (kill -9 强制杀死进程) | 参数 | 解释 | | ---- | --------------------------------------------- | | -l | 列出系统可以支持的进程控制信号 | | -s | 指定向进程发送的控制信号 | | -a | 处理当前进程时不限制命令名和进程号的对应关系 | | -p | 指定处理进程时只打印相关进程号,不发送任何信号 | 终止进程:pkill [参数] [进程名] | 参数 | 解释 | | ---- | -------------------------------- | | -o | 仅向找到的最小(起始)进程发送信号 | | -n | 仅向找到的最大(结束)进程发送信号 | | -P | 指定父进程发送信号 | | -g | 指定进程组 | | -t | 指定开启进程的终端 | 进程管理:screen [参数] | 参数 | 解释 | | ---------- | -------------------------------------------- | | -A | 所有视窗都调整到当前终端大小 | | -v | 显示版本信息 | | -x | 回复之前离线的作业,共享屏幕操作作业人物 | | -ls/-list | 显示目前所有的作业 | | -wipe | 检查目前所有的作业并删除已经无法使用的作业 | | -d<作业名> | 把指定的作业离线(挂起) |
| -r<作业名> | 把指定离线的作业恢复 |
| -S<作业名> | 指定作业名称 |
| -m | 即使目前以在作业中的仍强制建立新的作业 |
| -R | 试图恢复离线的作业若找不到作业即建立新的作业 |
| -s | 建立新视窗时所执行的shell |

ctrl+a+d暂时退出screen操作界面
ctrl+alt+d彻底终止screen操作界面

网络配置

图形化配置:nmtui (需开启systemctl start NetworkManager)

激活网卡:systemctl start network

重启网卡:systemctl restart network

禁用网卡:systemctl stop network

查看路由:route -n

查看网络状态:systemctl status network

指定某个网卡重启:ifdown eth0 && ifup eth0

查看网卡地址信息:ip address show

查看指定网卡地址信息:ip address show eth0

查看网关地址信息配置:route -n (yum install -y net-tools)

查看DNS服务地址配置:cat /etc/resolv.conf

配置静态默认路由:route add default gw 1.1.1.1

配置静态网段路由:route add -net 10.10.10.0 netmask 255.255.255.0 gw 1.1.1.1

配置静态主机路由:route add -host 10.10.10.5 gw 1.1.1.1

以上命令重启会失效,永久保存查百度