符号
生成序列:{} 例:{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 > 文件名 <  | 类型 | 字符标识 | 数值标识 | 修改权限: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 | 用户相关命令 | 命令 | 解释 | 查看文件时间:stat | 属性 | 解释 | 查看系统时间:date 设置系统时间:date -s “20240723 20:26:05” 系统时间自动同步:timedatectl set-ntp 1(需开启systemctl start chronyd需调整时区set-timezone) 系统时间自动同步:ntpdate (需安装) 僵尸进程:子进程处理任务时异常退出,父进程没有回收子进程的资源,会导致子进程运行实体小时但仍在内核进程表里占据一条记录 查看当前进程状态 | 参数 | 解释 | 注:以上结果中TTY为?时代表系统运行的进程 STAT字段解释 | R | 可以被CPU调度加载的执行或运行状态 | ctrl+a+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 以上命令重启会失效,永久保存查百度
| —— | ——– | ——– |
| 读 | r | 4 |
| 写 | w | 2 |
| 执行 | x | 1 |
| 无权限 | – | 0 |系统用户
| :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 | 查看当前用户的权限 |文件操作
| —— | ———— |
| modify | 文件修改时间 |
| access | 文件访问时间 |
| change | 文件改变时间 |系统进程
孤儿进程:子进程处理任务时父进程退出而子进程没有退出则由系统的systemd来管理
静态进程查看ps:只查看某一时间段的进程运行情况
| —- | ——————————– |
| -a | 显示所有终端下执行的程序 |
| -A | 显示系统中存在的所有程序信息 |
| -u | 显示进程管理的用户信息 |
| -x | 显示所有程序包含系统的进程 |
| -e | 和-A指令相同 |
| -f | 显示更加详细的信息包含PID,PPID等 |
注:[]代表系统进程
常用:ps -aux
| —- | ————————————- |
| 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
ctrl+alt+d彻底终止screen操作界面网络配置