linux shell(.sh)脚本编写和运行入门

编写第一个shell脚本

在gedit中编写.sh格式的文件,保存为a.sh。

linux shell(.sh)脚本编写和运行入门

代码:
#! /bin/bash # employ bash shell
player1=xiaoming # define a player1
player2=ken 
echo "Game start! $player1 $player2" # echo is used to printf in terminal

在终端调用脚本,定位到目录,然后输入:

bash a.sh

linux shell(.sh)脚本编写和运行入门

看到打印结果如上所示。

编写第一个if/else脚本

编写的if/else如下:
if和 ; 之间的代码

ls -l a.sh

是用来判断当前的目录下是否存在a.sh这个文件。if和else的基本格式如下所示,

if command ; then
code1
else
code2
fi

linux shell(.sh)脚本编写和运行入门

在终端调用的结果如下,可以看到输出了

ls return true

linux shell(.sh)脚本编写和运行入门

再看一个if/else脚本

如下脚本,if/else格式和上面格式一致,重点看下 if 和 ;间的那个命令,命令开始以 [,后面有4个参数 $1,=,me,]

linux shell(.sh)脚本编写和运行入门

输出的结果如下所示:

linux shell(.sh)脚本编写和运行入门

用 = 来判断输入的字符串是否等于me。其他的常用判断参数见下图:

linux shell(.sh)脚本编写和运行入门

看一个for循环

for循环的格式如下脚本所示:

linux shell(.sh)脚本编写和运行入门

#! /bin/bash # employ bash shell
for num in 1 2 3 4 5 six
do 
  echo "num=$num"

for(( num=1; num<7; num++)) # method2
do 
 echo "num=$num"
done

while循环

while循环的基本格式如下:

linux shell(.sh)脚本编写和运行入门

linux shell(.sh)脚本编写和运行入门

#! /bin/bash

i=7
j=10
while [ $i -lt $j ] 
do
  echo "num1 = $i, num2=$j"
  ((i++))
done

相关推荐