下面是一篇面向零基础读者的 Linux 通用命令与实用小技巧详解。文章分为若干模块,每个模块介绍常用命令的作用、语法和示例,并穿插一些提高效率的使用技巧。


目录

  1. 文件与目录基础操作
  2. 查看与编辑文件内容
  3. 查找与过滤
  4. 权限管理
  5. 进程与服务管理
  6. 系统信息与网络
  7. 压缩、打包
  8. Shell 小技巧

文件与目录基础操作

命令 用途 语法示例 说明
pwd 显示当前工作目录 pwd 打印当前所在路径
ls 列出目录内容 ls -l /home/user 列出指定目录并以长格式显示
cd 切换目录 cd /var/log / cd .. 切换到指定目录,“..” 表示上级目录
mkdir 创建目录 mkdir myfolder 创建名为 myfolder 的新目录
rmdir 删除空目录 rmdir oldfolder 只能删除空目录
rm 删除文件或目录 rm file.txt / rm -r folder/ -r 递归删除,慎用
cp 复制文件或目录 cp a.txt b.txt / cp -r src/ dst/ 复制文件或整个目录
mv 移动或重命名文件/目录 mv old.txt new.txt 第二个参数可以是目录或新文件名

小 tip:使用 ls -h 可以友好地以 KB/MB/GB 单位显示文件大小;ls -a 列出隐藏文件(以.开头)。


查看与编辑文件内容

命令 用途 示例 说明
cat 连续输出文件内容 cat /etc/hosts 简单快速查看小文件
less 分页查看文件 less /var/log/syslog 向上/下翻页,按 q 退出
more 分页查看(功能比 less 少) more file.txt 同样按 q 退出
head 查看文件开头若干行 head -n 20 logfile 默认显示前 10 行
tail 查看文件结尾若干行 tail -f /var/log/auth.log -f 实时跟踪追加内容
nano 终端编辑器(简单易用) nano notes.txt 新手友好,Ctrl+O 保存,Ctrl+X 退出
vi/vim 功能强大的终端编辑器(初学有门槛) vim config.conf 模式切换:i 进入插入,Esc 返回命令模式

小 tip:在 less 查看时,输入 /关键词 可搜索内容;在 tail -f 时,按 Ctrl+C 停止跟踪。


查找与过滤

命令 用途 示例 说明
grep 文本过滤,匹配包含关键词的行 grep 'error' /var/log/syslog -i 忽略大小写,-R 递归目录查找
find 根据条件查找文件 find . -name '*.sh' 在当前目录及子目录查找 .sh 结尾的文件
locate 快速查找已编入索引的文件 locate passwd 索引需 updatedb 事先更新;速度快
wc 计算行数、单词数、字节数 wc -l file.txt -w 统计单词数,-c 统计字节数
管道 ` ` 将前一命令输出作为后一命令输入 `ps aux grep nginx` 常用于组合使用,如 `dmesg grep usb` 等

小 tip:用 grep -v 'pattern' 可排除包含 pattern 的行;grep -n 显示行号。


权限管理

命令 用途 示例 说明
chmod 修改文件/目录权限 chmod 755 script.sh 755rwxr-xr-x
chown 修改文件/目录所有者及所属组 chown user:group file.txt 若只改所有者可省略 :group
umask 设置默认创建文件权限掩码 umask 022 新创建文件权限 = 666-掩码,目录 = 777-掩码
sudo 以超级用户(root)权限执行命令 sudo apt update 提示输入当前用户密码

小 tipls -l 可查看权限、所有者和大小等信息;权限用 rwx 表示读、写、执行。


进程与服务管理

命令 用途 示例 说明
ps 列出当前进程 ps aux a 所有用户进程,x 包括无控制终端进程
top/htop 实时显示系统进程和资源占用 top htop 更友好,需要另行安装
kill 发送信号终止进程 kill 1234 / kill -9 1234 -9 强制杀死
systemctl 管理 systemd 服务 systemctl status nginx
systemctl start nginx
systemctl enable nginx
查看、启动、开机自启服务
journalctl 查看 systemd 日志 journalctl -u sshd -f 实时跟踪,--since today 当天日志

小 tip:按 Shift + P(CPU)或 Shift + M(内存)可以在 top 中排序;常用 systemctl restart 服务名 快速重启服务。


系统信息与网络

命令 用途 示例 说明
uname -a 显示内核版本和系统信息 uname -a 包括内核版本、主机名、体系结构等
df 查看文件系统磁盘使用情况 df -h -h 以人类可读方式显示
du 查看目录/文件所占磁盘空间 du -sh /var/log -s 汇总,-h 人类可读
free 查看内存和交换分区使用情况 free -h -h 以可读单位显示
ping 测试网络连通性 ping -c 4 google.com -c 指定发送次数
ip 查看和配置网络接口 ip a / ip route 现代替代 ifconfig
ss 查看网络连接 ss -tulpn t tcp,u udp,l 监听,p 进程

小 tip:使用 df -i 查看 inode 使用情况;watch -n 5 command 每 5 秒重复执行一次命令并刷新屏幕。


压缩打包

命令 用途 示例 说明
tar 打包并压缩/解压 tar czvf archive.tar.gz folder/ 压缩:c(create)、z(gzip)、v(verbose)、f(file)
tar xzvf file.tar.gz 解压 gzip 格式包 tar xzvf archive.tar.gz x(extract)、z、v、f
zip/unzip zip 格式压缩/解压 zip -r archive.zip folder/
unzip archive.zip
-r 递归压缩
gzip/gunzip 对单个文件进行 gzip 压缩/解压 gzip file.txt / gunzip file.txt.gz 原文件被替换
bzip2/bunzip2 bzip2 格式压缩/解压 bzip2 file.txt / bunzip2 file.txt.bz2 压缩比更高但速度稍慢

小 tiptar xjvf file.tar.bz2 用于解 .tar.bz2;现代系统也支持 tar xJvf file.tar.xz.xz


Shell 小技巧

  • Tab 自动补全:敲击 Tab 键自动补全文件名、命令或变量,极大提高输入效率。

  • 命令历史:上下方向键浏览历史命令;history 列出历史,!n 重执行第 n 条。

  • 管道与重定向

    • > 重定向输出到文件(覆盖),>> 追加。
    • 2> 重定向错误输出,&> 同时重定向标准输出和错误。
  • 快捷键

    • Ctrl + A 光标跳到行首;Ctrl + E 跳到行尾。
    • Ctrl + U 删除光标前所有字符;Ctrl + K 删除光标后所有字符。
    • Ctrl + R 反向搜索历史命令。
  • 别名(alias):在 ~/.bashrc~/.zshrc 中添加如:

    alias ll='ls -lh --color=auto'
    alias cls='clear'
    

    保存后 source ~/.bashrc 使生效。


结语

本文涵盖了 Linux 中最常用的基础命令及若干小技巧,适合零基础读者入门。掌握这些命令后,可以在日常运维、脚本编写、问题排查等场景中提升效率。建议边实践边查阅 man 命令名(如 man ls)获取更详细的使用说明。

祝你在 Linux 的世界里驰骋自如!