DragonOS
DragonOS copied to clipboard
切换目录的时候与..相关的若干bug
示例:
- cd bin/..会跳转到一个提示为bin/..的目录下,该目录执行ls会输出一个名为c的文件
- 执行cd ../..的时候,如果目录深度足够,则会跳转到{dir}/../..,如果目录深度不足则报错
总之需要对..进行额外检查
另外cd //会跳转到//下,ls显示正常,此时cd bin/..会跳转到///bin/..下
这确实是问题,但是由于目前shell是暴力实现的,要做各种检查会很麻烦,导致一堆屎山代码。目前有一个同学正在研究用rust重写shell,通过类似编译器的词法分析、语法语义分析的方式来解析shell命令。写出来之后,这种问题就不存在了。 现在不打算修复的原因是,目前的shell的设计导致了这样的问题修不完哈哈
哦,我还以为这些是在文件系统里面检查的
这确实是问题,但是由于目前shell是暴力实现的,要做各种检查会很麻烦,导致一堆屎山代码。目前有一个同学正在研究用rust重写shell,通过类似编译器的词法分析、语法语义分析的方式来解析shell命令。写出来之后,这种问题就不存在了。 现在不打算修复的原因是,目前的shell的设计导致了这样的问题修不完哈哈
我想一起重写shell,怎么参加?
现在也没这个问题了