当前位置: 技术问答>linux和unix
shell中函数的使用
来源: 互联网 发布时间:2015-08-18
本文导语: myfun文件如下: #!/bin/bash hello() { echo "hello world..." } 然后执行 . myfun 载入shell 载入后在提示符下可直接执行 hello 了。 然后建入文件 test1 如下: #!/bin/bash hello 保存后加入可执行属性:chmod u+x test1 运行...
myfun文件如下:
#!/bin/bash
hello()
{
echo "hello world..."
}
然后执行 . myfun 载入shell
载入后在提示符下可直接执行 hello 了。
然后建入文件 test1 如下:
#!/bin/bash
hello
保存后加入可执行属性:chmod u+x test1
运行... 提示:./test1: line 2: hello: No such file or directory
为什么在提示符下直接执行hello可行,而把hello放在test1中就不行了?
#!/bin/bash
hello()
{
echo "hello world..."
}
然后执行 . myfun 载入shell
载入后在提示符下可直接执行 hello 了。
然后建入文件 test1 如下:
#!/bin/bash
hello
保存后加入可执行属性:chmod u+x test1
运行... 提示:./test1: line 2: hello: No such file or directory
为什么在提示符下直接执行hello可行,而把hello放在test1中就不行了?
|
我认为你的hello只在当前的shell中加载了,当你执行test1时,启动了另一个shell,hello自然就不存在了,你需要在test1中加入对myfun文件的加载:.myfun