Linux 常用命令手册
Linux 命令是管理和操作 Linux 系统的基石。掌握它们可以极大地提高工作效率和对系统的理解。
一、 基础文件与目录操作
这些命令是使用最频繁的,用于导航和操作文件系统。
命令 | 功能描述 | 常用示例/参数 |
---|---|---|
ls | 列出目录内容 | ls -l (详细信息), ls -a (显示隐藏文件), ls -lh (人类可读的文件大小) |
pwd | 显示当前工作目录的路径 | pwd |
cd | 切换目录 | cd /home (绝对路径), cd .. (上级目录), cd ~ (回家目录) |
mkdir | 创建新目录 | mkdir new_folder , mkdir -p parent/child (创建多级目录) |
rmdir | 删除空目录 | rmdir empty_folder |
cp | 复制文件或目录 | cp file1 file2 , cp -r dir1 dir2 (递归复制目录) |
mv | 移动或重命名文件/目录 | mv old.txt new.txt (重命名), mv file /tmp/ (移动) |
rm | 删除文件或目录 | rm file , rm -r dir (递归删除目录), rm -rf (强制递归删除,非常危险!) |
touch | 创建空文件或更新文件时间戳 | touch new_file.txt |
cat | 查看文件全部内容(适合小文件) | cat file.txt |
less / more | 分页查看文件内容(适合大文件) | less file.log (可上下翻页,按 q 退出) |
head | 显示文件开头部分 | head -n 20 file.log (显示前20行) |
tail | 显示文件末尾部分 | tail -n 10 file.log (显示后10行), tail -f file.log (实时追踪文件更新) |
find | 在目录树中查找文件 | find /home -name "*.txt" (按文件名查找), find . -type f -size +10M (查找大于10M的文件) |
二、 文件内容查看与编辑
命令 | 功能描述 | 常用示例/参数 |
---|---|---|
grep | 强大的文本搜索工具 | grep "error" logfile , grep -r "hello" /path (递归搜索), grep -i "ignore" file (忽略大小写) |
wc | 统计文件的行数、词数、字节数 | wc -l file.txt (统计行数) |
diff | 比较两个文件的差异 | diff file1.txt file2.txt |
vim / vi / nano | 文本编辑器 | vim file.txt (进入后按 i 插入,按 ESC 后输入 :wq 保存退出) |
三、 文件权限与所有权
Linux 系统中,文件和目录的访问由权限控制。
命令 | 功能描述 | 常用示例/参数 |
---|---|---|
chmod | 修改文件权限 | chmod 755 script.sh (数字模式), chmod u+x file (给所有者添加执行权限) |
chown | 修改文件所有者和所属组 | chown user:group file |
ls -l | 查看详细权限信息 | 输出如 -rwxr--r-- , 第一个字符是文件类型,后面三组分别是 所有者(u)、所属组(g)、其他用户(o) 的 r (读)、w (写)、x (执行) 权限。 |
四、 系统管理与信息查看
命令 | 功能描述 | 常用示例/参数 | |
---|---|---|---|
sudo | 以超级管理员权限执行命令 | sudo apt update | |
top / htop | 动态实时显示进程信息(系统任务管理器) | top , htop (更友好,需安装) | |
ps | 显示当前进程快照 | ps aux , `ps -ef | grep nginx` (结合 grep 查找特定进程) |
kill | 终止进程 | kill 1234 (终止PID为1234的进程), kill -9 1234 (强制终止) | |
df | 报告文件系统磁盘空间使用情况 | df -h (人类可读的格式) | |
du | 估算文件/目录的磁盘使用空间 | du -sh /path (总结显示目录总大小) | |
free | 显示内存使用情况 | free -h | |
uname | 显示系统信息 | uname -a (显示所有信息) | |
whoami | 显示当前登录用户名 | whoami | |
date | 显示或设置系统日期和时间 | date |
五、 网络相关命令
命令 | 功能描述 | 常用示例/参数 |
---|---|---|
ping | 测试与目标主机的网络连接 | ping google.com , ping -c 4 8.8.8.8 (发送4个包后停止) |
curl / wget | 从网络下载文件 | curl -O http://example.com/file , wget http://example.com/file |
ssh | 安全地远程登录到另一台计算机 | ssh username@host_ip |
scp | 安全地在本地和远程主机之间复制文件 | scp file.txt user@remote_host:/path |
netstat / ss | 显示网络连接、路由表、接口统计等 | netstat -tulnp (查看监听端口), ss -tulnp (更现代的替代品) |
ifconfig / ip | 配置和显示网络接口参数 | ifconfig (传统), ip addr show (推荐使用) |
六、 压缩与解压
命令 | 功能描述 | 常用示例/参数 |
---|---|---|
tar | 打包和解包文件(常与gzip/bzip2联用) | tar -czvf archive.tar.gz /path (创建.gz压缩包), tar -xzvf archive.tar.gz (解压.gz包) |
gzip / gunzip | 压缩/解压 .gz 文件 | gzip file , gunzip file.gz |
zip / unzip | 压缩/解压 .zip 文件 | zip archive.zip file1 file2 , unzip archive.zip |
七、 管道与重定向(核心概念)
这不是一个命令,而是一种强大的机制,用于组合命令和处理输入/输出。
符号 | 功能描述 | 示例 | ||
---|---|---|---|---|
` | ` (管道) | 将一个命令的输出作为另一个命令的输入 | `ps aux | grep python` (在进程列表中查找 Python 进程) |
> | 将输出重定向到文件(覆盖) | ls > filelist.txt (将 ls 结果写入文件,覆盖原内容) | ||
>> | 将输出追加到文件 | echo "new line" >> file.txt (在文件末尾追加一行) | ||
< | 将文件内容作为命令的输入 | sort < unsorted.txt |
使用技巧与注意事项
善用 Tab 键补全: 输入命令或文件名时,按
Tab
键可以自动补全,按两次显示所有可能的选择。使用历史命令: 按
上下箭头
键可以翻阅之前执行过的命令。使用history
命令查看全部历史。寻求帮助:
谨慎使用
rm -rf
: 这个命令会强制删除,且不可恢复。在执行前务必确认路径是否正确。理解路径:
man <command>
: 查看命令的详细手册,是最权威的帮助文档。
<command> --help
: 大多数命令都支持此参数,显示简明的用法说明。
绝对路径: 从根目录 /
开始的完整路径,如 /usr/local/bin
。
相对路径: 从当前目录开始的路径,如 ./script.sh
(当前目录下) 或 ../files
(上级目录的 files 文件夹)。