最近由于工作的关系,粗略的接触到一点脚本,之前也接触过,只是之前没有写过,只是偶尔自己加几句话怎么的。今天自己动手写啦一下,把shell对比于C语言的一些不同写在这里,当作自己学习的一个笔记,如果有不足之处还望各位牛人指出。
不说这么多的废话吧,还是直接上代码:
#!/bin/sh
start_command()
{
echo "the first argument is :" $1
do_it()
{
local rc=0
echo "I just test !"
echo "Input Error !"
}
while [ 1 ] ; do
read finished
case $finished in
1) echo "your input is 1 !" ;;
2) echo "your input is 2 !" ;;
q) echo "quit successful !"
break ;;
*) do_it ;;
esac
done
}
start_command "hello world !"
exit 0
程序运行的结果:
the first argument is : hello world !
1
your input is 1 !
2
your input is 2 !
3
I just test !
Input Error !
2
your input is 2 !
1
your input is 1 !
q
quit successful !
由于自己没有系统的看过shell语法的书,在这里只是简单的把shell的语法类比于C语言的来学习。通过这上面一个简单的例子,我主要归纳出啦下面3点得不同。
1,shell中函数的定义与函数的调用。
在shell中,函数的定义不需要像在C语言中那样要指明函数的返回值类型,函数的参数个数以及每个参数的类型。
写到这里大家首先会想到难道shell中的函数都没有返回值么?不是,shell中的函数可以有返回值的,下面我通过自己总结的两个方法来讲解: