免费

从零构建 Shell

Build your own Shell

Shell 是与操作系统交互的基础工具。在这个挑战中,你将实现一个功能完整的 Shell,包括命令解析、环境变量、管道、重定向、任务控制等功能。

支持的语言

ruRust
goGo
cC
cpCpp
pyPython
tyTypescript
挑战进度47 阶段

预计时间

20-40 小时

难度范围

入门 - 困难

已有学习者

2,000+

技术标签

Shell进程管道系统调用

你将学到什么?

  • 实现 REPL 循环
  • 掌握进程创建与管理
  • 实现管道与重定向
  • 理解 Shell 的引号处理

前置要求

  • 熟悉命令行操作
  • 了解进程基础概念

学习路径

21 个阶段

基础

(8)
1

打印提示符

2

处理无效命令

3

实现 REPL

4

实现 exit

5

实现 echo

6

实现 type

7

定位可执行文件

8

运行程序

Navigation

(4)
1

pwd 内置命令

2

cd 绝对路径

3

cd 相对路径

4

cd 主目录

Quoting

(3)
1

单引号

2

双引号

3

反斜杠转义

Redirection

(3)
1

重定向标准输出

2

重定向标准错误

3

追加标准输出

Pipelines

(3)
1

双命令管道

2

内置命令管道

3

多命令管道

AI 演进导读

我们的 AI 引擎会将源码的 Git 演进历史可视化,带你从「第一行核心代码」开始, 逐步理解每个设计决策背后的思考过程。不只是知道「是什么」,更要理解「为什么」。