一、 系统信息与状态
命令 | 描述 | 示例 |
---|
date | 显示当前系统日期和时间 | date |
cal | 显示当前月份的日历 | cal |
uptime | 显示系统运行了多长时间 | uptime |
w | 显示当前登录的用户及其进程 | w |
whoami | 显示当前登录的用户名 | whoami |
uname -a | 显示系统内核信息(所有信息) | uname -a |
hostname | 显示主机名 | hostname |
cat /etc/os-release | 显示操作系统发行版信息 | cat /etc/os-release |
二、 硬件信息
命令 | 描述 |
---|
lscpu | 显示 CPU 架构信息 |
free -h | 以易读格式显示内存使用情况(非常常用) |
df -h | 以易读格式显示磁盘空间使用情况(非常常用) |
du -sh <目录名> | 估算指定目录的磁盘使用量(-s :总计,-h :易读格式) |
lsblk | 列出所有块设备(硬盘、分区等)信息 |
lspci | 列出所有 PCI 设备(如显卡、网卡) |
lsusb | 列出所有 USB 设备 |
三、 文件与目录操作
1. 导航与查看
命令 | 描述 | 示例 |
---|
pwd | 显示当前工作目录的路径 | pwd |
ls | 列出当前目录的内容 | ls |
ls -l | 以详细列表格式列出内容 | ls -l |
ls -a | 列出所有内容(包括隐藏文件,以. 开头的文件) | ls -a |
ls -la | 详细列表格式列出所有内容(最常用组合) | ls -la |
cd <目录名> | 切换到指定目录 | cd /home/user/Documents |
cd 或 cd ~ | 返回当前用户的家目录(/home/用户名 ) | cd |
cd .. | 返回上一级目录 | cd .. |
cd - | 返回上一次所在的目录 | cd - |
cat <文件名> | 连接并显示文件内容(适合短文件) | cat file.txt |
less <文件名> | 分页显示文件内容(适合长文件) | less log.txt |
head -n <行数> <文件名> | 显示文件开头几行(默认10行) | head -5 file.txt |
tail -n <行数> <文件名> | 显示文件末尾几行(默认10行) | tail -10 file.txt |
tail -f <文件名> | 实时追踪文件末尾的新内容(看日志神器) | tail -f /var/log/syslog |
2. 创建、删除与复制
命令 | 描述 | 示例 |
---|
mkdir <目录名> | 创建新目录 | mkdir new_folder |
mkdir -p dir1/dir2 | 创建多级嵌套目录 | mkdir -p project/src |
touch <文件名> | 创建一个新的空文件或更新文件时间戳 | touch new_file.txt |
cp <源文件> <目标> | 复制文件或目录 | cp file.txt backup/ |
cp -r <源目录> <目标> | 递归复制目录(包含其所有内容) | cp -r old_dir/ new_location/ |
mv <源> <目标> | 移动或重命名文件/目录 | mv oldname.txt newname.txt |
rm <文件名> | 删除文件(无法恢复!) | rm useless_file.txt |
rm -r <目录名> | 递归删除目录及其所有内容(慎用!) | rm -r old_directory |
rm -f <文件名> | 强制删除,不提示确认(极其危险!) | rm -f locked_file |
四、 文件权限与所有权
Linux 文件权限分为三组:用户(User)、组(Group)、其他(Other)。每组有 读(r)、写(w)、执行(x) 权限。
命令 | 描述 | 示例 |
---|
chmod <权限> <文件> | 改变文件权限 | chmod +x script.sh (添加执行权限) |
chmod 755 script.sh | 用数字模式设置权限(755 = rwxr-xr-x ) | chmod 755 script.sh |
chown <用户>:<组> <文件> | 改变文件的所有者和所属组 | chown user:users file.txt |
chown -R user:users dir/ | 递归改变目录下所有文件的所有权 | chown -R user:users project/ |
五、 文本处理
命令 | 描述 | 示例 |
---|
grep <模式> <文件> | 在文件中搜索指定模式的文本 | grep "error" log.txt |
grep -r "pattern" dir/ | 递归地在目录中搜索 | grep -r "function" src/ |
grep -i | 忽略大小写搜索 | grep -i "warning" log.txt |
find <路径> -name <文件名> | 在指定路径下根据文件名查找文件 | find /home -name "*.txt" |
find . -type f -name "*.log" | 在当前目录查找所有 .log 文件 | find . -type f -name "*.log" |
wc <文件> | 统计文件的行数、词数、字节数 | wc -l file.txt (只统计行数) |
sort <文件> | 对文本行进行排序 | sort names.txt |
uniq <文件> | 报告或忽略重复的行(常与 sort 连用) | sort file.txt | uniq |
diff <文件1> <文件2> | 比较两个文件的差异 | diff original.txt modified.txt |
六、 进程管理
命令 | 描述 | 示例 |
---|
ps | 显示当前终端下的进程快照 | ps |
ps aux | 显示所有运行中的进程的详细信息(非常常用) | ps aux |
top 或 htop | 动态、交互式地显示进程状态(系统监控器) | top |
kill <PID> | 根据进程ID终止一个进程 | kill 1234 |
kill -9 <PID> | 强制终止一个进程(无法捕获的信号) | kill -9 1234 |
pkill <进程名> | 根据进程名终止进程 | pkill firefox |
bg | 将暂停的作业放到后台运行 | bg |
fg | 将后台作业带到前台运行 | fg %1 |
jobs | 列出当前shell中的作业 | jobs |
七、 网络管理
命令 | 描述 | 示例 |
---|
ping <主机> | 测试与另一台主机的网络连接 | ping google.com |
ifconfig 或 ip a | 显示或配置网络接口信息(ip 命令更现代) | ip a |
netstat -tulnp | 显示网络连接、路由表、接口统计等 | netstat -tulnp |
ss -tulnp | netstat 的现代替代品,功能类似 | ss -tulnp |
wget <URL> | 从网络下载文件 | wget http://example.com/file.iso |
curl -O <URL> | 传输数据,常用于测试API或下载 | curl -O http://example.com/file.txt |
ssh <用户>@<主机> | 安全地远程登录到另一台计算机 | ssh user@192.168.1.100 |
scp <文件> <用户>@<主机>:<路径> | 安全地在本地和远程主机间复制文件 | scp file.txt user@host:/remote/dir/ |
八、 软件包管理 (APT)
Ubuntu 基于 Debian,使用 apt
包管理工具。
命令 | 描述 |
---|
sudo apt update | 更新可用软件包列表(必须首先运行) |
sudo apt upgrade | 升级所有已安装的软件包 |
sudo apt install <包名> | 安装一个软件包 |
sudo apt remove <包名> | 移除一个软件包(保留配置文件) |
sudo apt purge <包名> | 完全移除一个软件包(包括配置文件) |
sudo apt autoremove | 自动移除不再需要的依赖包 |
sudo apt search <关键词> | 搜索软件包 |
sudo apt show <包名> | 显示软件包的详细信息 |
dpkg -i <package.deb> | 安装本地 .deb 软件包文件 |
九、 压缩与解压
命令 | 描述 | 示例 |
---|
tar -czvf archive.tar.gz dir/ | 创建 .tar.gz 压缩包 | tar -czvf backup.tar.gz my_folder/ |
tar -xzvf archive.tar.gz | 解压 .tar.gz 压缩包 | tar -xzvf backup.tar.gz |
zip -r archive.zip dir/ | 创建 .zip 压缩包 | zip -r photos.zip vacation_photos/ |
unzip archive.zip | 解压 .zip 压缩包 | unzip archive.zip |
十、 用户管理
命令 | 描述 | 示例 |
---|
sudo adduser <用户名> | 添加一个新用户 | sudo adduser john |
sudo deluser <用户名> | 删除一个用户 | sudo deluser john |
sudo passwd <用户名> | 修改用户密码(root可为任何用户修改) | sudo passwd john |
sudo usermod -aG <组名> <用户名> | 将用户添加到附加组 | sudo usermod -aG sudo john (赋予sudo权限) |
groups <用户名> | 查看用户属于哪些组 | groups john |
十一、 系统管理与关机
命令 | 描述 | 注意 |
---|
sudo <命令> | 以超级管理员(root)权限运行命令 | 几乎所有系统管理命令都需要 |
sudo reboot | 重启系统 | |
sudo shutdown -h now | 立即关机 | |
sudo shutdown -r +10 | 10分钟后重启 | |
exit 或 logout | 退出当前终端会话或SSH登录 | |
十二、 帮助命令
命令 | 描述 |
---|
<命令> --help | 显示该命令的简短帮助信息 |
man <命令> | 查看命令的详细手册页(最权威的帮助) |
whatis <命令> | 用一句话描述命令的作用 |
which <命令> | 显示命令的完整安装路径 |
alias | 查看当前设置的所有命令别名 |
提示:
谨慎使用 rm -rf
,尤其是在根目录 /
下,它可能会摧毁你的系统。
按 Tab
键可以自动补全命令、文件名和目录名。
按 ↑
和 ↓
箭头键可以翻阅历史命令。
按 Ctrl + C
可以强制终止当前正在运行的命令。
按 Ctrl + D
可以退出当前终端(相当于输入 exit
)。
希望这份大全能成为您学习和使用 Ubuntu 命令行的有力工具!