编写shell

开头

  • 标记系统使用的是哪种shell
#!/bin/bash

变量

  • 定义变量
a=hello

等号两边不能有空格

  • 使用变量
echo $a
echo ${a}world!
  • 删除变量
unset a

数据类型

  • shell是弱类型语言,可直接定义数字和字符串
a=3
b=hello
  • 字符串可用单引号或者双引号标记起来,单引号内不可以使用转义字符和变量,双引号内可以
a='Jay'
b="I'm \"${a}\""
  • 数组
array=(a b c)
echo ${array[0]}

输入输出

read input
a=${input}
echo hello
printf "hello\n"

流程控制

  • 选择
if condition
then
    command1 
    command2
    ...
    commandN 
fi
if condition
then
    command1 
    command2
    ...
    commandN
el***mand
fi
if condition1
then
    command1
elif condition2 
then 
    command2
el***mandN
fi
  • 循环
for var in item1 item2 ... itemN
do
    command1
    command2
    ...
    commandN
done
while condition
do
    command
done