# SkyTownShell **Repository Path**: rscs/SkyTownShell ## Basic Information - **Project Name**: SkyTownShell - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2021-04-09 - **Last Updated**: 2021-04-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SkyTown Shell SkyTown工作室的shell模拟器 ### 设计说明 ##### 一切皆变量 在skytown shell中的所有值皆为变量,在未赋值前需要用双引号将值扩起,命令可以看做处理变量的工具。在变量中,变量名在初值上需用双引号扩起,而后面使用变量时则不能使用双引号 ##### 转换计算值 在双引号扩起的匿名变量中,如果开头为`$$`,则可将后面的值作为算式处理,自动获取初值,为了避免冲突,如果算式中需要使用变量,则用`$变量名`;如要在字符串中使用变量,则使用`$$${}`。**注意:一个运算符仅能做一个函数或四则运算,如`$$1+2+3`是不合法的,它属于两个运算,这是实现方便起见。如果要计算`1+2+3`,则需:`echo "$${$${1+2}+3}"`**。这个特性可以使用栈实现。