Ubuntu 下的shell基本语法
注意shell的默认赋值是字符串赋值
var=1 var=$var+1 echo $var
打印出来的不是2而是1+1。为了达到我们想要的效果有以下几种表达方式:
let "var+=1" var=$[$var+1] var=$(($var+1)) var=`expr $var + 1`#注意加号两边的空格,否则还是按照字符串的方式赋值。
注意:前两种方式在bash下有效,在sh下会出错。
let表示数学运算,expr用于整数值运算,每一项用空格隔开,$[]将中括号内的表达式作为数学运算先计算结果再输出。
Shell脚本中有许多变量是系统自动设定的,我们将在用到这些变量时再作说明。除了只在脚本内有效的普通shell变量外,还有环境变量,即那些由export关键字处理过的变量。本文不讨论环境变量,因为它们一般只在登录脚本中用到。
if 语 句
"if"表达式如果条件为真,则执行then后的部分:
if ....; then .... elif ....; then .... else .... fi
【Ubuntu 下的shell基本语法】大多数情况下,可以使用测试命令来对条件进行测试,比如可以比较字符串、判断文件是否存在及是否可读等等……通常用" [ ] "来表示条件测试,注意这里的空格很重要,要确保方括号前后的空格。
- [ -f "somefile" ] :判断是否是一个文件
- [ -x "/bin/ls" ] :判断/bin/ls是否存在并有可执行权限
- [ -n "$var" ] :判断$var变量是否有值
- [ "$a" = "$b" ] :判断$a和$b是否相等
推荐阅读
- Shell-Bash变量与运算符
- 生活随笔|好天气下的意外之喜
- Linux|109 个实用 shell 脚本
- 未来可期,直面疫情下的各种困境
- VM|VM ware 的 harbor 私有仓库搭建 (Ubuntu16.04)
- Android下的IO库-Okio源码解析(一)|Android下的IO库-Okio源码解析(一) 入门
- Xshell5|Xshell5 远程连接本地虚拟机Ubuntu16
- ubuntu开机默认进入命令行模式/用户图形界面
- 重压之下的我们,谁没动过几次轻生的念头
- seedubuntu|seedubuntu 下搭建discuz论坛