1. 关于Shell
- C语言编写的程序
- 命令语言/程序设计语言
创建步骤:
- 创建 .sh 文件
- 编写 shell 代码
- 执行 shell 脚本(脚本要有可执行权限):chmod +x
2. 变量
先定义后使用
zjc_name="zjc"
echo $zjc_name
变量名规范:
- 变量名后面等号左右不能有空格
- 命名只能使用英文字母、数字和下划线,首字符不能以数字开头
- 中间不能有空格
- 不能使用标点符号
- 不能使用bash里的关键字(help命令查看保留关键字)
#!/bin/bash
str='hello world';
echo $str
双引号能够识别变量,能够实现转义
单引号不能识别变量,只能原样输出
2.1 只读变量
#!/bin/bash
a=10
readonly a
a=20
echo $a
2.2 接受用户输入
read -p 提示信息 变量名
#!/bin/bash
read -p '请输入需要创建的文件路径:' filepath
touch $filepath
echo '文件创建成功!'
ls -l $filepath
2.3 删除变量
unset 变量名
#!/bin/bash
b=20
echo $b
unset b
echo $b
3. 运算符
3.1 算数运算符
#!/bin/bash
val=`expr 2 + 2`
echo "两数之和为:$val"
表达式和运算符之间要有空格
完整的表达式要被 ` ` 包含(ESC键下面)
a=10
b=20
echo "a=$a"
echo "b=$b"
echo ''
echo 'a + b = ' `expr $a + $b`
echo 'a - b = ' `expr $a - $b`
echo 'a * b = ' `expr $a \* $b`
echo 'b / a = ' `expr $b / $a`
echo 'b % a = ' `expr $b % $a`
if [ $a == $b ]
then
echo 'a等于b'
else
echo 'a不等于b'
fi
3.2 逻辑运算符
! 非运算,[!false]返回ture
-o 或运算,有一个表达式为ture则返回ture
-a 与运算。两个表达式都为ture
#!/bin/bash
a=10
b=20
if [ ifalse ]
then
echo '真'
fi
if [ $a -lt 20 -o $b -gt 100]
then
echo '真'
fi
if [ $a -lt 20 -a $b -gt 100]
then
echo '真'
else
echo ‘假’
fi