Linux Scripts

精选 Linux 常用快捷指令与生产环境自动化脚本,涵盖系统维护、网络调试、安全审计及 DevOps 常用工具。

Systemd 服务管理

启动服务

# 立即启动指定的后台服务

systemctl start [service]
已复制指令

停止服务

# 立即停止指定的后台服务

systemctl stop [service]
已复制指令

查看服务状态

# 检查服务是否运行及错误详情

systemctl status [service]
已复制指令

设置开机自启

# 将服务加入开机自动启动项

systemctl enable [service]
已复制指令

重载配置文件

# 修改 .service 文件后必须执行

systemctl daemon-reload
已复制指令

查看错误日志

# 排查服务启动失败原因

journalctl -u [service] -xe
已复制指令

系统信息与资源

查看内核详情

# 显示内核版本、架构及主机名

uname -a
已复制指令

查看发行版

# 确认操作系统详细发行信息

cat /etc/os-release
已复制指令

系统运行时间

# 显示系统已运行时间及平均负载

uptime
已复制指令

查看主机名配置

# 显示并修改系统主机名设置

hostnamectl
已复制指令

内存使用情况

# 以易读格式显示物理与交换内存

free -h
已复制指令

磁盘空间占用

# 查看各挂载点的磁盘剩余空间

df -h
已复制指令

目录占用统计

# 统计当前目录项大小并降序排列

du -sh * | sort -hr
已复制指令

查看 CPU 信息

# 显示 CPU 架构、核心数及频率

lscpu
已复制指令

查看块设备

# 显示磁盘分区、挂载点及大小

lsblk
已复制指令

系统硬件日志

# 查看最近的内核与硬件事件

dmesg | tail -n 50
已复制指令

进程与性能监控

实时任务管理器

# 经典的进程与资源监控工具

top
已复制指令

全量进程列表

# 显示系统中所有运行的进程

ps aux
已复制指令

强制杀死进程

# 根据 PID 强制停止某个程序

kill -9 [PID]
已复制指令

按名杀死进程

# 根据程序名称批量停止进程

pkill [name]
已复制指令

查询端口占用

# 查找占用特定端口的进程

lsof -i :80
已复制指令

强杀端口进程

# 直接杀死占用 80 端口的所有进程

fuser -k 80/tcp
已复制指令

系统资源统计

# 每秒刷新一次 CPU、内存及 IO 统计

vmstat 1
已复制指令

查看后台任务

# 列出当前终端挂起的后台任务

jobs -l
已复制指令

调至后台运行

# 将暂停的任务转入后台继续执行

bg %[id]
已复制指令

调至前台运行

# 将后台任务转回前台执行

fg %[id]
已复制指令

网络管理与调试

查看网卡 IP

# 查看所有网络接口的 IP 地址

ip addr
已复制指令

查看路由表

# 显示系统当前的网关与路由路径

ip route
已复制指令

监听端口查询

# 查看正在监听的 TCP/UDP 端口

ss -tunlp
已复制指令

经典网络工具

# 显示 TCP 连接与端口状态

netstat -antp
已复制指令

网络连通性测试

# 发送 4 次 ICMP 包测试连接

ping -c 4 google.com
已复制指令

域名解析查询

# 快速获取域名的 A 记录 IP

dig +short google.com
已复制指令

查看公网出口 IP

# 从外部 API 获取本机公网地址

curl ifconfig.me
已复制指令

下载文件 (断点)

# 从网络下载文件并支持续传

wget -c [URL]
已复制指令

HTTP 头部探测

# 仅获取网站的 HTTP 响应头

curl -I [URL]
已复制指令

查看网络流量

# 实时可视化查看带宽占用情况

nload
已复制指令

测试带宽速度

# 专业级网络吞吐量测试工具

iperf3 -c [server]
已复制指令

抓取网络包

# 捕获指定网卡的网络流量数据

tcpdump -i eth0
已复制指令

文件处理与搜索

搜索文件路径

# 在指定目录下递归查找文件

find /var/log -name "*.log"
已复制指令

全文内容搜索

# 在当前目录及子目录下查找匹配内容

grep -rn "error" .
已复制指令

实时滚动日志

# 动态追踪日志文件末尾新增内容

tail -f /var/log/syslog
已复制指令

文件内容对比

# 对比两个文件的差异行

diff file1.txt file2.txt
已复制指令

统计行数字数

# 统计文件包含的总行数

wc -l filename
已复制指令

提取首 10 行

# 查看文件开头的部分内容

head -n 10 filename
已复制指令

查看尾 20 行

# 查看文件末尾的部分内容

tail -n 20 filename
已复制指令

打包压缩 (tar)

# 将目录打包并使用 Gzip 压缩

tar -czvf app.tar.gz [dir]
已复制指令

解压包 (tar)

# 一键解压 .tar.gz 压缩包

tar -xzvf app.tar.gz
已复制指令

一键解压 Zip

# 解压常见的 .zip 格式文件

unzip file.zip
已复制指令

用户权限与安全

以 Root 执行

# 提升权限执行特定指令

sudo [command]
已复制指令

当前登录用户

# 显示当前的会话用户名

whoami
已复制指令

查看用户组

# 显示用户所属的所有安全组

groups [user]
已复制指令

修改文件权限

# 设置读写执行权限 (rwxr-xr-x)

chmod 755 [file]
已复制指令

修改所属权

# 递归修改文件所有者与所属组

chown -R user:group [dir]
已复制指令

查看登录历史

# 显示最近 20 条用户登录记录

last -n 20
已复制指令

查看历史命令

# 显示最近执行过的 Shell 指令

history | tail -n 50
已复制指令

更改用户密码

# 修改当前或指定用户的登录密码

passwd
已复制指令

软件包管理 (APT/Debian)

更新软件源

# 同步软件包索引文件

sudo apt update
已复制指令

升级软件包

# 安装所有已安装包的新版本

sudo apt upgrade
已复制指令

安装新软件

# 从仓库下载并安装程序

sudo apt install [pkg]
已复制指令

卸载软件包

# 移除程序但保留配置文件

sudo apt remove [pkg]
已复制指令

彻底卸载

# 移除程序及其配置文件

sudo apt purge [pkg]
已复制指令

清理不再需要的依赖

# 自动卸载孤立的依赖包

sudo apt autoremove
已复制指令

搜索软件包

# 在仓库中匹配关键字

apt search [keyword]
已复制指令

SSH 与远程管理

生成 SSH 密钥

# 生成现代安全的 SSH 密钥对

ssh-keygen -t ed25519
已复制指令

复制公钥到远程

# 实现免密登录远程服务器

ssh-copy-id user@host
已复制指令

远程文件传输

# 基于 SSH 的安全文件拷贝

scp file.txt user@host:/path
已复制指令

增量同步 (rsync)

# 最高效的目录同步工具

rsync -avz local/ user@host:/remote/
已复制指令

保持后台会话 (tmux)

# 终端复用器,断开连接不终止程序

tmux new -s [name]
已复制指令

查看所有 tmux 会话

# 列出所有正在运行的后台窗口

tmux ls
已复制指令