# 第五部分 高级话题

### 目录

* [18.正则表达式](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/18_regular_expressions)
  * [18.1正则表达式简介](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/18_regular_expressions/18_1_a_brief_introduction_to_regular_expressions)
  * [18.2文件名替换](https://github.com/LinuxStory/Advanced-Bash-Scripting-Guide-in-Chinese/blob/master/source/part5/18_2_globbing.md)
* [19. 嵌入文档](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/19_here_documents)
* [20. I/O 重定向](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/20_io_redirection)
  * [20.1 使用 exec](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/20_io_redirection/20_1_use_exec)
  * [20.2 重定向代码块](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/20_io_redirection/20_2_redirecting_code_blocks)
  * [20.3 应用程序](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/20_io_redirection/20_3_applications)
* [22. 限制模式的Shell](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/22_restricted_shells)
* [23. 进程替换](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/23_process_substitution)
* [24. 函数](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/24_functions)
  * [24.1 复杂函数和函数复杂性](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/24_functions/24_1_complex_functions_and_function_complexities)
  * [24.2 局部变量](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/24_functions/24_2_local_variables)
  * [24.3 不适用局部变量的递归](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/24_functions/24_3_recursion_without_local_variables)
* [25. 别名](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/25_aliases)
* [26. 列表结构](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/26_list_constructs)
* [27. 数组](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/27_arrays)
* [28. 间接引用](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/28_ivr)
* [29. `/dev` 和 `/proc`](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/29_devproc)
  * [29.1 `/dev`](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/29_devproc/29_1_devref1)
  * [29.2 `/proc`](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/29_devproc/29_2_procref1)
* [30. 网络编程](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/30_network_programming)
* [32. 调试](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/32_debugging)
* [33. 选项](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/33_options)
* [34. 陷阱](https://github.com/LinuxStory/Advanced-Bash-Scripting-Guide-in-Chinese/blob/master/source/part5/34_Gotchsa.md)
* [36. 杂项](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/36_miscellany)
  * [36.1 交互和非交互shell以及脚本](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/36_miscellany/36_1_interactive_and_non-interactive_shells_and_scripts)
  * [36.2 shell wrappers](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/36_miscellany/36_2_shell_wrappers)
  * [36.3 测试和比较的其他方法](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/36_miscellany/36_3_tests_and_comparisons_alternatives)
  * [36.4 递归：调用自己的脚本](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/36_miscellany/36_4_recursion_a_script_calling_itself)
  * [36.5 “彩色”的脚本](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/36_miscellany/36_5_colorizing_scripts)
  * [36.6 优化](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/36_miscellany/36_6_optimizations)
  * [36.7 其他技巧](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/36_miscellany/36_7_assorted_tips)
  * [36.8 安全问题](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/36_miscellany/36_8_security_issues)
  * [36.9 可移植性问题](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/36_miscellany/36_9_portability_issues)
  * [36.10 Windows系统下的脚本](https://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5/36_miscellany/36_10_shell_scripting_under_windows)


---

# 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://linuxstory.gitbook.io/advanced-bash-scripting-guide-in-chinese/zheng-wen/part5.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.
