bash语法
国际惯例打印hello world
该程序运行结果:
hello world
1.变量:
a=;b="hello world";echo $a $b
该程序运行结果:
1 hello world
注意:变量赋值,“=”左右两边都不能有空格
1.1数组:
a=( ) echo ${a[@]}
该程序运行结果:
0 1 2 3 4
a=({..5}) echo ${a[@]}
该程序运行结果:
0 1 2 3 4 5
1.2 字符串操作:
‘#’去掉前面部分, ‘%’去掉后面部分
s="hello world "
echo "${s#*l}"
echo "${s##*l}"
echo "${s%l*}"
echo "${s%%l*}"
该程序运行结果:
lo world
d
hello wor
he
‘/’替换字符串
a="hello world"
b="${a/world/test}"
echo $b
该程序运行结果:
hello haha
2 操作符:
对应的操作 | 整数操作 | 字符串操作 |
相同 | -eq | = |
不同 | -ne | != |
大于 | -gt | > |
小于 | -lt | < |
大于或等于 | -ge | |
小于或等于 | -le | |
为空 | -z | |
不为空 | -n |
文件运算符:
运算符
|
含义( 满足下面要求时返回 TRUE ) |
-e file
|
文件 file 已经存在 |
-f file
|
文件 file 是普通文件 |
-s file
|
文件 file 大小不为零 |
-d file
|
文件 file 是一个目录 |
-r file
|
文件 file 对当前用户可以读取 |
-w file
|
文件 file 对当前用户可以写入 |
-x file
|
文件 file 对当前用户可以执行 |
-g file
|
文件 file 的 GID 标志被设置 |
-u file
|
文件 file 的 UID 标志被设置 |
-O file
|
文件 file 是属于当前用户的 |
-G file
|
文件 file 的组 ID 和当前用户相同 |
file1 -nt file2
|
文件 file1 比 file2 更新 |
file1 -ot file2
|
文件 file1 比 file2 更老 |
3.控制语句
1.if...then...else....fi
a=;b=;if [ $a -lt $b ];then echo " $a < $b";else echo "false";fi
该程序运行结果:
1 < 2
2.for...do...don
方式一
for i in ;do echo $i;done
该程序运行结果:
1
2
3
4
方式二
for ((i=;i<4;i++));do echo $i;done
该程序运行结果:
0
1
2
3
4
3.
3. while...do....done
a=
while(($a<=))
do
echo $a
((a++))
done
该程序运行结果:
1
2
3
4
5
也可以这么用,它将打印文件file里面的东西
while read x
do
echo $x
done < file
bash语法的更多相关文章
- bash语法注意点
bash 语法注意点 =和不能分开 如: val=expr $a + $b` [空格 *** 空格]条件判断要有空格 如: if [ $a ==$b ] 表达式和运算符之间要有空格, $a空格 + 空 ...
- bash 语法使用
1.定义函数时,不需要使用function作为函数的命名. 函数不需要形参. 函数名不能以数字作为开头 main() { in ) 1_start ;; ) 1_start 5_start ;; ) ...
- DBA_基本Bash语法汇总(汇总)
2014-06-26 Created By BaoXinjian
- DBA_基本Bash语法汇总
一.变量 1.变量命名可使用英文字母.数字和下划线,必须以英文字母开头,区分大小写. 2.每个shell都拥有自己的变量定义,彼此互不影响. 3.变量直接以等号赋值,注意等号两边不可留空,若等号右侧有 ...
- Bash基本语法
Bash语法非常的简单,Bash是一个命令解释程序,单使用Bash做不了什么,但是Bash结合Linux命令就很强大了,几乎可以完成Linux所有的事情,早年第一个接触Bash的时候,可以追 ...
- Bash 脚本语法
每次学了忘,忘了学,怎么记不住,因为长时间不用了 Bash 流程控制 循环 for循环 for item in $list do echo $item done 另一种与C语言类似的写法 ; i< ...
- sh与bash执行语法严谨问题
在Linux中,我们知道有几种方式可以运行.sh脚本 通过sh或者bash命令来运行 通过source来运行 通过./xxx.sh来运行(这种方式要求对脚本文件有r和x权限才行) 今天在写脚本的过程中 ...
- 转:bash shell 语法1
1 Shell介绍 Shell的作用是解释执行用户的命令,用户输入一条命令,Shell就解释执行一条,这种方式称为交互式(Interactive),Shell还有一种执行命令的方式称为批处理(Batc ...
- Bash 脚本编程语言中的美学与哲学
我承认,我再一次地当了标题党.但是不可否认,这一定是一篇精华随笔.在这一篇中,我将探讨 Bash 脚本语言中的美学与哲学. 这不是一篇 Bash 脚本编程的教程,但是却能让人更加深入地了解 Bash ...
随机推荐
- htmlparser 学习
htmlparser 学习系列 htmlparser 使用法使用与详解
- Django rest framework源码分析(3)----节流
目录 Django rest framework(1)----认证 Django rest framework(2)----权限 Django rest framework(3)----节流 Djan ...
- 【ASP.NET MVC系列】浅谈ASP.NET MVC八大类扩展(上篇)
lASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操 ...
- Redis未授权访问
最近在做校招题目的时候发现有问到未授权访问,特此搭建了诸多未授权访问的环境并且一一复现并做简单总结.再次记录下来 环境介绍 0x00环境搭建 我这里用到的是Microsoft(R) Windows(R ...
- 使用Iterator迭代器循环集合
1.Iterator迭代器用于遍历集合元素,获取迭代器可以使用. 2.Iterator提供了统一遍历集合元素的 方式 ,其提供了用于遍历集合的连个方法----- boolean hasNext()判 ...
- Myeclipse10.7.1 导出war包报错
myeclipse10.7.1 导出war问题解决办法myeclipse10破解后,导出war包时报"SECURITY ALERT: INTEGERITY CHECK ERROR" ...
- .Net Core微服务系列--理论篇
微服务的由来 微服务最早由Martin Fowler与James Lewis于2014年共同提出来的,但是微服务也不是一个全新的概念,它是由一系列在实践中获得成功并流行起来的概念中总结出来的一种模式, ...
- spring-boot-oracle spring-batch
Install/Configure Oracle express Oracle xe installer for linux (I don't care if you're running linux ...
- Embedded servlet containers
73. Embedded servlet containers 73.1 Add a Servlet, Filter or Listener to an application There are t ...
- 使用JWT的OAuth2的SSO分析
参考:https://github.com/spring-guides/tut-spring-security-and-angular-js/blob/master/oauth2/README.ado ...