File tree Expand file tree Collapse file tree 2 files changed +343
-53
lines changed
Expand file tree Collapse file tree 2 files changed +343
-53
lines changed Original file line number Diff line number Diff line change @@ -225,7 +225,7 @@ python grader.py -d 5-jobs
225225 - 代码风格与注释
226226
227227- 选做任务(20%)
228- - 任选两项[ 选做任务] ( #33 -附加任务选做 ) 完成
228+ - 任选两项[ 选做任务] ( #34 -附加任务选做 ) 完成
229229 - 或使用 Rust 实现
230230
231231- 实验报告与代码质量(20%)
@@ -317,8 +317,6 @@ Shell 不仅是执行命令的工具,也是一种编程语言。你可以为
317317
318318真正实用的 Shell 需要与操作系统深度集成。PATH 管理与命令查找优化是一个很好的切入点,你可以支持在运行时动态添加、删除PATH中的条目,并将其持久化到配置文件。还可以使用缓存或哈希表对 PATH 下的可执行文件进行索引,加速命令查找。
319319
320- 持久化作业与会话恢复则是一个更具挑战性的方向,你可以研究如何将后台作业状态记录至文件,使 Shell 重启后能够重新接管先前的进程。
321-
322320配置文件与插件系统可以大大增强 Shell 的可定制性和扩展性。你可以设计读取 ` ~/.tshrc ` 这样的配置文件,在启动时加载用户的环境变量、自定义函数、别名等设置。更进一步,你可以定义插件接口,允许用户通过动态库扩展 Shell 的能力。
323321
324322## 8.4 性能与安全 🛡️
@@ -327,15 +325,13 @@ Shell 不仅是执行命令的工具,也是一种编程语言。你可以为
327325
328326在安全方面,你可以实现命令执行的权限控制和安全检查,如白名单/黑名单机制,防止执行某些高危操作。对命令执行路径和权限的严格检查则可以预防路径注入攻击。
329327
330- 更进一步,你可以研究如何通过 Linux 的 ` seccomp ` 或其他机制为命令执行提供沙盒环境,对 Shell 可执行的系统调用进行限制,在保证功能的同时提升安全性。
331-
332328## 8.5 参考资源 📚
333329
334330- [ POSIX Shell 标准] ( https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html )
335331 有助于理解 Shell 语法的最小通用规范和关键特性。
336332- [ GNU Bash 参考手册] ( https://www.gnu.org/software/bash/manual/ )
337- Bash包含了大量进阶功能 ,如命令替换、算术表达式、扩展模式匹配等,能为自定义Shell提供借鉴 。
333+ Bash 包含了大量进阶功能 ,如命令替换、算术表达式、扩展模式匹配等,能为自定义 Shell 提供借鉴 。
338334- [ Zsh 官方文档] ( https://zsh.sourceforge.io/Doc/ )
339- Zsh在交互性 、可扩展性方面非常灵活,很多功能或设计理念值得学习。
335+ Zsh 在交互性 、可扩展性方面非常灵活,很多功能或设计理念值得学习。
340336- [ 高级 Bash 脚本指南] ( https://tldp.org/LDP/abs/html/ )
341- 其中对Shell脚本的高级语法 、技巧、陷阱均有说明,可以作为实现高级功能时的参考。
337+ 其中对 Shell 脚本的高级语法 、技巧、陷阱均有说明,可以作为实现高级功能时的参考。
You can’t perform that action at this time.
0 commit comments