Chinaunix

标题: 请教关于bash的function [打印本页]

作者: lk_wmy    时间: 2008-09-05 10:13
标题: 请教关于bash的function
目前我使用的shell是busybox的ash, 现有一个脚本,使用了bash的function,但ash不支持function的解析。 请问有什么好的解决方法?最好是能基于busybox的办法。 谢谢!
作者: blackold    时间: 2008-09-05 10:29
标题: 回复 #1 lk_wmy 的帖子
bash的许多语法ash都不支持。
man 它啰。
作者: waker    时间: 2008-09-05 10:38
function只是便于组织代码,不是一个脚本必须的
作者: lk_wmy    时间: 2008-09-05 11:56
标题: 回复 #3 waker 的帖子
谢谢!但是这个脚本是别人提供的,里面大量使用function,还有有很多嵌套;如果来替换太麻烦了。所以想请教看有没有好的办法。
作者: prc    时间: 2008-09-05 13:39
ash应该是支持function功能的
只是定义function的时候不能使用关键字function

bash
---------------------
function foo()
{
}


ash
---------------------
foo() {
}
作者: lk_wmy    时间: 2008-09-05 17:02
标题: 回复 #5 prc 的帖子
问题解决了,用“prc   帅哥  (噢,卖糕的!) ”的方法。  谢谢大家!
作者: sdu_lizhipeng    时间: 2008-09-07 13:41
function function_name {
command...
}


function_name () {
command...
}

C程序员肯定会更加喜欢第二中格式的写法(并且这种写法可移植性更好).
作者: 寂寞烈火    时间: 2008-09-07 14:07
function func-name {} #是korn shell-style语法, 这方式支持局部变量的实用
func-name () {} #是Posix-style风格的, 不支持局部变量




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2