# 前言

**关注作者公众号**： \
&#x20;![](https://2612773934-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MRfZJaoOyC8mqFtPeFq%2Fsync%2F2dda1ef2e74c0a404c5ca1167350027a9204067a.jpg?generation=1611343754793226\&alt=media) <br>

## 前言

* [背景](#toc_18682_17841_1)
* [现状](#toc_18682_17841_2)
* [计划](#toc_18682_17841_3)

### 背景

早在 2007 年 11 月，为了系统地学习和总结 Shell 编程，作者专门制定了一个 Shell 编程范例的总结计划，当时的计划是：

> 这个系列将以面向“对象”（即我们操作的对象）来展开，并引入大量的实例，这样有助于让我们真正去学以致用，并在用的过程中提高兴趣。所以这个系列将不会专门介绍 Shell 的语法， 而是假设读者对 Shell 编程有了一定的基础。
>
> 另外，该系列到最后可能会涵盖：数值、逻辑值、字符串、文件、进程、文件系统等所有我们可以操作的“对象”，这个操作对象也将从低级到高级，进而上升到网络层面，整个通过各种方式连接起来的计算机的集合。实际上这也未尝不是在摸索 UNIX 的哲学，那"K.I.S.S"（Keep It Simple, Stupid）蕴藏的巨大能量。
>
> —— 摘自《兰大开源社区 >> 脚本编程 >> Shell 编程范例》

2008 年 4 月底，整个系列大部分内容和框架基本完成，后来由于实习和工作原因，并没有持续完善。不过相关章节却获得了较好的反响，很多热心网友有大量评论和转载，例如，在百度文库转载的一份《Shell编程范例之字符串操作》的访问量已接近 3000。说明整个系列还是有比较大的阅读群体。

### 现状

考虑到整个 Linux 世界的蓬勃发展，Shell 的使用环境越来越多，相关使用群体会不断增加，所以最近已经将该系列重新整理，并以自由书籍的方式发布，以便惠及更多的读者。

整个系列已经用 [Markdown](http://www.tinylab.org/start-posting-with-markdown/) 重新组织，并发布到了 [泰晓科技|TinyLab.org](http://tinylab.org)。

整理到[TinyLab.org](http://tinylab.org)的索引篇是：[《Shell编程范例之索引篇》](http://www.tinylab.org/shell-programming-paradigm-series-index-review/)，其内容结构如下：

* [Shell编程范例之开篇](http://www.tinylab.org/shell-programming-paradigm-begins-with/) (更新时间：2007-07-21)
* [Shell编程范例之数值运算](http://www.tinylab.org/shell-numeric-calculation/) (更新时间：2007-11-9)
* [Shell编程范例之布尔运算](http://www.tinylab.org/shell-programming-paradigm-of-boolean-operations/) (更新时间：2007-10-30)
* [Shell编程范例之字符串操作](http://www.tinylab.org/shell-programming-paradigm-of-string-manipulation/) (更新时间：2007-11-21)
* [Shell编程范例之文件操作](http://www.tinylab.org/shell-programming-paradigms-of-file-operations/) (更新时间：2007-12-5)
* [Shell编程范例之文件系统操作](http://www.tinylab.org/shell-programming-paradigm-in-file-system-operations/) (更新时间：2007-12-29)
* [Shell编程范例之进程操作](http://www.tinylab.org/shell-programming-paradigm-of-process-operations/) (更新时间：2008-02-22)
* [Shell编程范例之网络操作](http://www.tinylab.org/shell-programming-paradigm-of-network-operations/) (更新时间：2008-04-19)
* [Shell编程范例之总结篇](http://www.tinylab.org/summary-of-shell-programming-paradigm-article/) (更新时间：2008-07-21)<br>

最近，基于一个 Markdown 的[开源书籍模版](http://tinylab.org/docker-quick-start-docker-gitbook-writing-a-book/)：Gitbook，已经把该系列整理成了自由书籍，并维护在 TinyLab 的[项目仓库](https://github.com/tinyclub/open-shell-book)中。项目相关信息如下：

* 项目首页：<http://www.tinylab.org/open-shell-book/>
* 代码仓库：[https://github.com/tinyclub/open-shell-book.git](https://github.com/tinyclub/open-shell-book)

### 计划

后续除了继续在 [泰晓科技|TinyLab.org](http://tinylab.org) 以 Blog 形式持续更新外，还打算重新规划、增补整个系列，并以自由书籍的方式持续维护，并通过 [TinLab.org](http://tinylab.org) 平台接受读者的反馈，直到正式发行出版。

欢迎大家指出本书初稿中的不足，甚至参与到相关章节的写作、校订和完善中来。

如果有时间和兴趣，欢迎参与。可以通过 [泰晓科技](http://www.tinylab.org/about/) 联系我们，或者直接联系微信号 tinylab。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://tinylab-1.gitbook.io/shellbook/01-chapter1.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
