shell语法使用
shell语法使用
这两天初次接触shell编程,所谓shell编程其实就是用一定的语法将各种基本的命令组合起来,让shell程序去解释执行。如果对windows的dos有了解,可以这样理解,其实shell脚本文件和.bat批处理文件差不多,不过linux下的shell比起windows的dos强大很多。
shell有很多种,如bash、sh 、tcsh、 ksh等,linux系统里面默认使用的是bash。
下面看一下学习shell的第一个程序:
输入命令vi my_01.sh,创建一个my_01.sh文件并用vi编辑器打开。编辑内容如下:
#!/bin/
这里第一行是指让bash这个shell去执行这个shell程序。echo是用来输出的,第二行和第三行分别输出两句话。
执行这个shell程序可以用如下几种方法:
1 ./my_01.sh
2 . my_01.sh
3 bash my_01.sh
下面是第二个shell程序:
#!/bin/ #my_02.
read -p
这里第三行read命令是指等待用户输入,-p后面是指提示,它还有一个参数-t是设置等待时间的。这个程序运行结果如下:
[liuling@bogon test]$ ./my_02.sh
please input your name:liuling
liuling,welcome!
下面看几个例子:
#!/bin/ #my_03.
read -p read -p
test $name = "liuling"
[ $name = -a $ =
#!/bin/ #my_04.
read -p
[ $score -gt
[ $score -gt -a $score -le
#!/bin/ #my_05.
read -p #如果使用(())的话,只能用< > >= <=
(( $score >
[[ $score -gt && $score -le
测试用户输入的文件名是目录还是文件:
#!/bin/ #my_06.
read -p [ -
[ -
[ -
这三个例子都是关于if条件判断的用法。条件有这么几种写法:[ 条件 ]、test 条件、[[ 条件 ]]、(( 条件 )),用的最多的是第一种。常用判断符号如下
var *
下面是几个case用法的例子
1.模拟菜单的选择
#!/bin/ #my_07.
read -p $num
- - *
三、循环语句的使用
1、for循环
变量名
下面是for循环使用的小例子:
#!/bin/ #my_08.
a `
((i=;i<=;i++
下面是一个统计文件数目的小程序:
#!/bin/ #my_09.
i=
name1 ` /
# i=` $i + # let i++
# i=$[$i + # i=$(($i + ((i++
下面是一个录入客户资料的shell脚本:
#!/bin/ #my_10.
$choice
${name1}${age1} >>
四、函数的应用
下面是一个小例子程序:
#!/bin/ #fun.
$(($+$ add
add
评论暂时关闭