Linux常用命令合集 
(一)Linux基本文件架构 
1.Linux文件系统总览 
| 层级顺序 | 目录路径 | 中文名称 | 功能说明 | 常见文件 / 子目录 / 用途示例 | 
|---|---|---|---|---|
| 1 | ~ | 用户主目录(Home) | 当前登录用户的家目录,存放个人数据、配置文件、SSH密钥等。~ 实际指向 /home/用户名。 | .bashrc、.zshrc、.ssh/、Documents/、Downloads/ | 
| 2 | / | 根目录(Root Directory) | Linux 文件系统的顶层目录,所有文件与目录都从此派生。类似于 Windows 的 “C:\”。 | /bin, /etc, /usr, /home, /root, /var 等 | 
2. 根目录下的一级核心结构 
| 层级顺序 | 目录路径 | 中文名称 | 功能说明 | 常见文件 / 子目录 / 用途示例 | 
|---|---|---|---|---|
| 3 | /bin | 基本用户命令目录 | 存放单用户模式下也可运行的基础命令(二进制可执行文件),如系统启动所需命令。 | ls, cp, mv, cat, bash, chmod | 
| 4 | /sbin | 系统管理命令目录 | 存放系统管理员(root)使用的管理工具。 | ifconfig, reboot, fsck, iptables | 
| 5 | /boot | 引导目录 | 存放系统引导相关文件(内核、bootloader等)。 | vmlinuz, initrd.img, grub/ | 
| 6 | /dev | 设备文件目录 | 包含系统中所有设备接口的文件(字符/块设备)。Linux 将硬件抽象为文件。 | /dev/sda, /dev/null, /dev/tty | 
| 7 | /etc | 配置文件目录 | 系统及服务的主要配置文件。几乎所有系统服务的配置都在此。 | /etc/passwd, /etc/ssh/sshd_config, /etc/fstab, /etc/network/interfaces | 
| 8 | /home | 用户家目录 | 各普通用户的主目录所在位置。 | /home/alice/, /home/bob/ | 
| 9 | /lib, /lib64 | 系统共享库目录 | 存放核心系统命令运行所需的共享库文件,相当于Windows的DLL。 | libc.so, ld-linux.so | 
| 10 | /usr | 用户级程序与资源 | 存放用户使用的软件、文档、库文件,是系统体量最大的目录之一。 | /usr/bin, /usr/lib, /usr/share | 
| 11 | /var | 可变数据目录 | 存放经常变化的数据:日志、缓存、邮件、队列等。 | /var/log, /var/tmp, /var/lib, /var/cache | 
| 12 | /tmp | 临时文件目录 | 各程序运行时的临时数据。系统重启后常清空。 | 临时缓存、编辑器临时文件 | 
| 13 | /proc | 内核与进程信息目录 | 虚拟文件系统,用于访问内核与进程状态信息(伪文件)。 | /proc/cpuinfo, /proc/meminfo, /proc/<pid>/ | 
| 14 | /sys | 系统设备与内核接口 | sysfs 文件系统,提供对硬件与驱动的访问接口。 | /sys/class/net/, /sys/block/ | 
| 15 | /media | 自动挂载目录 | 外接存储(USB、光驱等)的默认挂载点。 | /media/usb, /media/cdrom | 
| 16 | /mnt | 临时挂载目录 | 手动挂载设备或临时文件系统时常用。 | /mnt/backup, /mnt/disk1 | 
| 17 | /opt | 可选软件目录 | 用户手动安装的第三方应用或软件包的安装位置。 | /opt/google/chrome, /opt/vmware/ | 
| 18 | /root | 超级用户主目录 | root 用户的主目录。 | /root/.bashrc, /root/.ssh/ | 
| 19 | /run | 运行时状态目录 | 存放系统运行时产生的PID文件、socket等临时状态。 | /run/systemd/, /run/sshd.pid | 
| 20 | /srv | 服务数据目录 | 系统服务(如HTTP/FTP等)提供的数据存放位置。 | /srv/www, /srv/ftp | 
3.一些重要的系统配置目录说明(位于 /etc 内) 
| 层级顺序 | 配置路径 | 主要作用 | 常见配置项 / 示例 | 
|---|---|---|---|
| 21 | /etc/passwd | 用户账户信息 | 用户名、UID、GID、home、shell 等 | 
| 22 | /etc/shadow | 用户密码信息(加密) | 存放加密后的密码散列 | 
| 23 | /etc/group | 用户组信息 | 组名、组ID、成员列表 | 
| 24 | /etc/fstab | 文件系统挂载表 | 指定系统启动时自动挂载的磁盘分区 | 
| 25 | /etc/network/interfaces 或 /etc/netplan/ | 网络配置文件(Debian / Ubuntu) | IP、DNS、网关、静态/动态配置 | 
| 26 | /etc/resolv.conf | DNS 配置文件 | nameserver、search、domain | 
| 27 | /etc/hosts | 本地主机名解析 | 本地DNS映射,如 127.0.0.1 localhost | 
| 28 | /etc/ssh/sshd_config | SSH 服务配置文件 | 端口、密钥登录、root登录策略 | 
| 29 | /etc/systemd/system/ | systemd 单元文件目录 | 自定义服务 .service 文件 | 
| 30 | /etc/crontab / /etc/cron.d/ | 定时任务配置 | 系统级 cron 任务定义 | 
| 31 | /etc/sudoers | sudo 权限配置 | 允许哪些用户使用 sudo 提权 | 
(二)Linux基础命令 
1.文件处理类命令 
| 指令 | 功能说明 | 常用参数 | 示例 | 
|---|---|---|---|
ls | 列出目录内容 | -l(详细) -a(含隐藏文件) -h(人类可读) | ls -lah /etc | 
cd | 切换目录 | cd -(回到上次目录) | cd /var/log | 
pwd | 显示当前工作目录 | (无) | pwd | 
cp | 复制文件或目录 | -r(递归复制目录) -p(保留属性) | cp -rp src/ dest/ | 
mv | 移动或重命名文件 | (无) | mv old.txt new.txt | 
rm | 删除文件或目录 | -r(递归) -f(强制) | rm -rf /tmp/test | 
mkdir | 创建目录 | -p(递归创建) | mkdir -p /opt/test/logs | 
rmdir | 删除空目录 | (无) | rmdir empty_folder | 
touch | 创建空文件或修改时间戳 | (无) | touch file.log | 
find | 查找文件 | -name(按文件名) -type(类型) | find /etc -name "*.conf" | 
du | 查看目录或文件大小 | -h(人类可读) -s(汇总) | du -sh /var/log | 
df | 查看磁盘使用情况 | -h(人类可读) | df -h | 
tar | 打包压缩文件 | -czf(压缩) -xzf(解压) | tar -czf backup.tar.gz /etc | 
ln | 创建链接 | -s(软链接) | ln -s /usr/bin/python3 /usr/bin/python | 
2.文本处理类命令 
| 指令 | 功能说明 | 常用参数 | 示例 | 
|---|---|---|---|
cat | 查看或拼接文件内容 | -n(显示行号) | cat -n /etc/hosts | 
less / more | 分页查看文件内容 | q退出 f下翻页 | less /var/log/syslog | 
head | 显示文件前几行 | -n(行数) | head -n 10 /etc/passwd | 
tail | 显示文件末几行 | -f(实时跟踪) | tail -f /var/log/messages | 
grep | 文本搜索 | -i(忽略大小写) -r(递归) -n(显示行号) | grep -rn "error" /var/log/ | 
awk | 文本列处理与格式化输出 | -F(分隔符) | awk -F: '{print $1}' /etc/passwd | 
sed | 文本替换与编辑 | -i(原地修改) s///(替换) | sed -i 's/http/https/g' config.txt | 
cut | 提取文本列 | -d(分隔符) -f(字段) | cut -d: -f1 /etc/passwd | 
sort | 排序文本 | -n(按数字) -r(逆序) | sort -nr scores.txt | 
uniq | 去重 | -c(统计重复次数) | uniq -c ip_list.txt | 
wc | 统计文件行数、字数、字符数 | -l(行数) -w(词数) | wc -l access.log | 
tr | 转换或删除字符 | -d(删除) | `cat file.txt | 
3.系统管理类命令 
| 指令 | 功能说明 | 常用参数 | 示例 | 
|---|---|---|---|
top | 实时显示进程与资源使用 | -p(指定PID) | top | 
htop | 交互式进程监控工具 | (需安装) | htop | 
ps | 查看进程信息 | -ef(所有进程) | `ps -ef | 
kill | 终止进程 | -9(强制) | kill -9 1234 | 
systemctl | 管理 systemd 服务 | start/stop/restart/status | systemctl restart ssh | 
service | 启动或停止旧版服务 | (兼容 SysVinit) | service nginx status | 
journalctl | 查看 systemd 日志 | -u(指定服务) -f(实时) | journalctl -u ssh -f | 
uptime | 显示系统运行时间 | (无) | uptime | 
free | 查看内存使用 | -h(人类可读) | free -h | 
df | 查看磁盘空间使用 | -h(人类可读) | df -Th | 
uname | 显示系统信息 | -a(全部) | uname -a | 
hostnamectl | 查看或设置主机名 | (无) | hostnamectl set-hostname server01 | 
reboot / shutdown | 重启或关机系统 | -r(重启) now | shutdown -r now | 
crontab | 定时任务管理 | -e(编辑) -l(查看) | crontab -e | 
su / sudo | 切换用户或提权 | (无) | sudo systemctl restart nginx | 
4.重要工具类命令 
| 指令 | 功能说明 | 常用参数 | 示例 | 
|---|---|---|---|
ping | 测试网络连通性 | -c(包数) | ping -c 4 www.google.com | 
curl | 网络请求工具 | -I(头部) -O(下载) | curl -I https://example.com | 
wget | 下载文件 | -c(断点续传) | wget -c https://example.com/file.zip | 
scp | 远程文件复制 | -r(递归) | scp -r user@host:/path /local/ | 
ssh | 远程登录 | -p(端口) | ssh -p 22 [email protected] | 
netstat / ss | 查看网络连接状态 | -tulnp(监听端口) | ss -tulnp | 
ifconfig / ip | 网络接口配置 | ip addr(显示接口) | ip addr show eth0 | 
traceroute | 路由跟踪 | (无) | traceroute www.baidu.com | 
dig / nslookup | DNS 查询 | (无) | dig +short example.com | 
rsync | 文件同步工具 | -avz(压缩传输) | rsync -avz /data/ root@server:/backup/ | 
5.其他常用命令 
| 指令 | 功能说明 | 常用参数 | 示例 | 
|---|---|---|---|
man | 查看命令手册 | man <cmd> | man ls | 
history | 查看命令历史 | !n(执行第n条) | history | 
alias | 定义命令别名 | (无) | alias ll='ls -lah' | 
echo | 输出文本 | (无) | echo "Hello Linux" | 
date | 查看或设置系统时间 | +%F(格式化) | date "+%Y-%m-%d %H:%M:%S" | 
whoami | 显示当前用户 | (无) | whoami | 
env | 查看环境变量 | (无) | `env | 
export | 设置环境变量 | (无) | export PATH=/usr/local/bin:$PATH | 
chmod | 修改权限 | -R(递归) | chmod 755 script.sh | 
chown | 修改文件所有者 | -R(递归) | chown root:root /var/www | 
clear | 清空终端 | (无) | clear | 
6.用echo查看常见文件变量 
| 环境变量 | 含义 | 示例命令 | 输出说明 | 
|---|---|---|---|
$PATH | 可执行文件搜索路径 | echo $PATH | 输出由冒号分隔的系统执行路径,如 /usr/local/bin:/usr/bin:/bin | 
$HOME | 当前用户主目录 | echo $HOME | 输出 /home/username | 
$USER | 当前用户名 | echo $USER | 输出当前登录用户,如 root | 
$SHELL | 当前 shell 程序路径 | echo $SHELL | 输出 /bin/bash 或 /usr/bin/zsh | 
$PWD | 当前工作目录 | echo $PWD | 输出当前目录路径,如 /etc | 
$OLDPWD | 上一个工作目录 | echo $OLDPWD | 输出上次使用 cd 前所在的路径 | 
$LANG | 系统语言与编码设置 | echo $LANG | 输出 en_US.UTF-8 或 zh_CN.UTF-8 | 
$HOSTNAME | 当前主机名 | echo $HOSTNAME | 输出服务器或主机名称 | 
$EDITOR | 默认文本编辑器 | echo $EDITOR | 输出如 vim、nano 等 | 
$RANDOM | 生成随机整数(0–32767) | echo $RANDOM | 输出一个随机数,如 20341 | 
$UID | 当前用户的用户 ID | echo $UID | root 为 0,普通用户如 1000 | 
$PS1 | 命令提示符样式变量 | echo $PS1 | 输出当前终端提示符格式定义字符串 | 
