一个shell函数是指一个shell脚本中一群命令。shell函数可让你将程序分割成不同的工作来模块化你的程序。此方式让每个工作的程序代码不需要在每次执行时都被重复一次。定义函数的POSIXshell语法是根据Bourneshell的:name(){这里是函数主...[继续阅读]
海量资源,尽在掌握
一个shell函数是指一个shell脚本中一群命令。shell函数可让你将程序分割成不同的工作来模块化你的程序。此方式让每个工作的程序代码不需要在每次执行时都被重复一次。定义函数的POSIXshell语法是根据Bourneshell的:name(){这里是函数主...[继续阅读]
本段描述下列议题:·变量替换·内置的shell变量·其他的shell变量·数组·规则(discipline)函数(只适用于ksh93)·特殊的提示符字符串变量替换ksh93提供了结构化的变量,例如pos.x及pos.y。为了产生其中之一,pos必须已经存在,且必须使用大括号...[继续阅读]
let命令会执行算术运算。ksh88及Bash被限制为整数运算。ksh93也可以做浮点运算。这两个shell都提供了一种方法来替换算术值(用来作为命令自变量或用在变量内),基数换算也是可以的:$((expr))使用括号内的算术表达式的值B#n以数字基数...[继续阅读]
这两个shell都可让你显示或修改前一个命令。在历史列表内的命令可被修改,请使用:·行编辑模式·fc及hist命令Bash也支持命令历史机制,与Cshell的相类。因为交互式行编辑功能相当优秀,且因为Bash的命令历史几乎与Cshell的相同,因此我们...[继续阅读]
工作控制让你将前台工作放置在后台中,将后台工作带到前台或者暂停(暂时地停止)正在运行的工作。所有现代的Unix系统,包括Linux及BSD系统,都支持工作控制,因此,工作控制功能会自动地开启。许多工作控制命令会取用工作标识符(jo...[继续阅读]
当你输入命令给Bash或ksh39时,它们会到下面的地方查看直到找到符合者:1.关键字,例如if及for。2.别名。你无法将shell关键字定义为别名,但是你可以定义别名,其会展开为关键字,例如,aliasaslongas=while(不在POSIX模式中时,Bash允许你为shell关键...[继续阅读]
受限制的shell是不允许某些动作的,例如更换目录、设定PATH或运行名称包含/字符的命令。原始的V7Bourneshell具有一个无正式文件说明的限制模式。Bourneshell稍后的版本阐明了源码并将功能文档化。今日,Bash及Kornshell都提供受限制的模式...[继续阅读]
以命令行方式所输入的范例会以$提示符来显示;否则,范例应该被看成源码片段,可被包括在shell脚本中。为了方便,有些多行命令所使用的保留字也会被包括进来。!!pipeline不适用于ksh88。反转管道的意义。如果管道离开状态是非零值...[继续阅读]