编写shell脚本程序有两种方式 :
可以输入一系列命令让shell交互地执行它们。
可以把这些命令保存到一个文件中,然后将该文件作为一个程序来调用。
直接输出入命令:
$cat ex1
date
pwd
cd ..
shell脚本的建立(利用vim)
执行shell脚本的方式 :
1$ bash < 脚本名
2$ bash 脚本名 【参数】
3将脚本设置成可执行。将该脚本所在目录添加到命令搜索路径中:
$ PATH=$PASH:.
双引号
双引号括起来的字符(除了$、’、\)都作为普通字符处理
单引号
单引号括起来的字符都作为普通字符处理
if语句:
一般格式为:
if 测试条件
then 命令1
else 命令2
fi
case语句:
case语句一般格式为:
case 字符串 in
模式字符串1) 命令
...
命令;;
模式字符串2) 命令
...
命令;;
esac
while语句:
例子:
while [ $1 ]
do
if [ -f $1 ]
then echo "display:$1"
cat $1
else echo "$1 is not a file name"
fi
shift
done
当然还包括break命令和continue命令同c语言中的相同就是结束命令
exit命令退出shell脚本
select语句:
格式:
select identifier[in word ...]
do
命令表
done
函数:
[function]函数名()
{
命令表
}
function可以是默认的
kill命令结束进程
bg和fg命令
bg将前台作业切换成后台作业
fg命令就是将后台切换成前台
shell内置命令
readonly就是将某变量更改为只读不可修改其值
wait报告终止状态
九九乘法表的表示方法
1、for的俩种方法
(1)
for((i=1;i<=9;i++))
do
for((j=1;j<=i;j++))
do
echo -ne "$i*$j=$((i*j))\t"
done
Echo
done
(2)
for i in {1,2,3,4,5,6,7,8,9}
do
for j in {1,2,3,4,5,6,7,8,9}
do
((p=$i*$j))
echo -ne $i\*$j=$p"\t"
done
echo
done
2、while的表示方法
i=1;
j=1;
while((i<=9))
do
while((j<=i))
do
let "temp=i*j"
echo -ne "$i*$j=$temp\t"
let j++
done
let i++
let j=1
echo ""
Done
3、until的表述方法
i=1
until ((i>9))
do
let j=1
until ((j>i))
do
let "temp=i*j"
echo -ne "$i*$j=$temp\t"
let j++
done
let i++
echo ""
done