学习 Unix(或类 Unix 系统,如 Linux、macOS)是一个循序渐进的过程,核心在于理解“一切皆文件”的设计哲学和通过命令行与系统交互。无论你是开发、运维还是系统爱好者,掌握 Unix 都能极大提升效率。
以下是为你整理的学习路径:
1. 选择你的“游乐场”
2. 熟悉终端(Terminal)
bash 或 zsh。3. 必学基础命令(生存必备) 不要死记硬背,多用自然就记住了。
pwd (Print Working Directory):你在哪?ls (List):看目录下有什么?cd (Change Directory):去哪里?mkdir (Make Directory):建文件夹。touch:建空文件。cp (Copy)、mv (Move/Rename)、rm (Remove):复制、移动、删除。rm -rf / 是删库跑路命令,千万别乱试。cat:查看全部内容。less / more:分页查看。head / tail:看头看尾。whoami:我是谁?date:现在几点?uname -a:系统信息。1. 文件权限与用户管理 Unix 的安全性基于权限。
ls -l:理解 rwx (读/写/执行) 和 rwxr-xr-x 这种字符串的含义。chmod:修改权限(例如 chmod 755 script.sh)。chown:修改文件所有者。sudo:以超级管理员身份执行命令(谨慎使用)。2. 输入输出重定向与管道(核心思想) 这是 Unix 的精髓:把小程序组合成强大的工具。
>:输出到文件(覆盖)。>>:输出到文件(追加)。<:从文件读取输入。|:
cat access.log | grep "404" | wc -l(查看日志中含有404的行数)。3. 文本处理三剑客
grep:搜索文本内容。awk:处理列数据(提取字段)。sed:流编辑器(替换文本)。4. 进程管理
ps aux:查看当前运行的进程。top / htop:实时监控系统资源。kill / pkill:结束进程。& 和 nohup:后台运行程序。1. 环境变量
PATH 变量:为什么输入 ls 系统知道去哪里找它?.bashrc 或 .zshrc。2. Shell 脚本编程 (Shell Scripting) 当你发现重复执行一系列命令时,就该写脚本了。
if...else)。for, while)。3. 网络基础
ip addr (或 ifconfig):查看 IP 地址。ping:测试连通性。netstat / ss:查看网络连接状态。curl / wget:下载文件或测试 API。ssh:远程登录服务器。4. 包管理
aptyum 或 dnfbrew/etc (配置), /var (日志), /bin (二进制), /home (用户家目录) 等目录的作用。grep, sed, awk 食用更佳。/var/log/syslog 或 journalctl。书籍(经典)
在线资源
实践项目(做中学)
.vimrc 配置。man 命令:遇到不会的命令,输入 man ls,这就是最权威的说明书。如果你现在想马上开始,请打开终端,输入 ls -l,看看输出结果,试着理解每一列代表什么,这就是第一步。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。