Shell脚本部分语法
显示当前shell中所有变量 : set
定义变量
STR="hello world"
A=9
unset A 撤销变量 A
readonly B=2 声明静态的变量 B=2 ,不能 unset
export 变量名 可把变量提升为全局环境变量,可供其他shell程序使用
运算符
S=`expr 2 + 3`
  expr $S \* 4
2.一步完成计算
expr `expr 2 + 3 ` \* 4
echo `expr \`expr 2 + 3\` \* 4`
或 $(((2+3)*4))
for N in 1 2 3
do
echo $N
done
或
for N in 1 2 3; do echo $N; done
或
for N in {1..3}; do echo $N; done
for ((i = 0; i <= 5; i++))
do
echo "welcome $i times"
done
或
for ((i = 0; i <= 5; i++)); do echo "welcome $i times"; done
while expression
do
command
…
done
i=1
while ((i<=3))
do
echo $i
let i++
done
case $1 in
start)
echo "starting"
;;
stop)
echo "stoping"
;;
*)
echo "Usage: {start|stop} “
esac
read -p "please input your name: " NAME
if condition 
then 
    statements 
[elif condition 
    then statements. ..] 
[else 
    statements ] 
fi
#!/bin/bash
read -p "please input your name:" NAME
#printf '%s\n' $NAME
if [ $NAME = root ]
then
echo "hello ${NAME}, welcome !"
elif [ $NAME = itcast ]
then
echo "hello ${NAME}, welcome !"
else
echo "SB, get out here !"
fi
#非空返回true,可使用$?验证(0为true,>1为false)
[ mike ]
#空返回false
[ ]
条件满足,执行后面的语句
=字符串比较
-lt小于
-le小于等于
-eq等于
-gt大于
-ge大于等于
-ne不等于
-r 有读的权限
-w 有写的权限
-x 有执行的权限
-f 文件存在并且是一个常规的文件
-s 文件存在且不为空
-d 文件存在并是一个目录
-b文件存在并且是一个块设备
-L文件存在并且是一个链接
[ function ] funname [()]
{
action;
[return int;]
}
function start() / function start / start()
1.必须在调用函数地方之前,先声明函数,shell脚本是逐行运行。不会像其它语言一样先预编译
2.函数返回值,只能通过$? 系统变量获得,可以显示加:return 返回,如果不加,将以最后一条命令运行结果,作为返回值。 return后跟数值n(0-255)
Shell脚本部分语法的更多相关文章
- shell脚本启动语法错误syntax error near unexpected token '{
		
执行shell脚本时失败,报语法错误,但脚本内容检查正常 原因为该脚本是在非Linux系统下编辑之后放到系统执行的,文件模式类型非Linux系统匹配的模式类型. 查看文件的模式类型 显示文件的模式类型 ...
 - Linux Shell脚本简单语法汇总(Deepin下运行)
		
整理自: https://www.runoob.com/?s=shell Shell 脚本(shell script),是一种为 shell 编写的脚本程序. 业界所说的 shell 通常都是指 sh ...
 - 运维shell脚本函数语法
		
在fun.sh 文件里,使用函数来封装脚本内容 usege() { echo "hello world" echo "脚本怎么使用函数......"}usege ...
 - shell脚本常用语法详解
		
逻辑控制 if 语法:注意空格 a=1b=2if [ $a == $b ]then echo "a==b"elif [ $a -gt $b ]then echo &qu ...
 - shell脚本基础-语法
		
一 变量 [root@T_FOOT-Home2-ZZZ01 ~]# a=hello [root@T_FOOT-Home2-ZZZ01 ~]# echo $a hello [root@T_FOOT-Ho ...
 - Shell 脚本编程 基本语法:
		
Shell 脚本编程语法: 注: 文章来源 http://www.cnblogs.com/yunquan/p/6821850.html 视频来源:https://www.bilibili.com/vi ...
 - shell脚本学习心得
		
近来主要捣鼓ubuntu,大多数项目中都用到了sh脚本作为启动脚本等,以前只是大概明白如何使用,今天需要自己修改并运行脚本就碰到了很多问题,所以决定静下心来学习一下shell脚本,学习了几个小时,现将 ...
 - shell脚本二
		
在shell脚本一 中,我讨论了shell脚本的语法规范,shell脚本的变量,以及shell脚本的测试语句. 仅仅懂得这些只能写简单的脚本,在简单的脚本中各条语句按顺序执行,从而实现自动化的管理,顺 ...
 - 写shell脚本速查笔记
		
linux shell脚本的语法蛋疼,而且对于java开发人员来说又不常用,常常是学了一次等到下次用的时候又忘记了.因此制作这个速查笔记,用于要写shell脚本时快速回忆&速查. 获取当前脚本 ...
 
随机推荐
- [19/02/23]ToolsShare 工具分享 VPNTethering Android (Root Required)
			
To be short, VPN Tethering is a quite useful tool when you want to share your private network with s ...
 - 使用 Python 获取 Linux 系统信息
			
探索platform模块 platform模块在标准库中,它有很多运行我们获得众多系统信息的函数.让我们运行Python解释器来探索它们中的一些函数,那就从platform.uname()函数开始吧: ...
 - Vue2.0 - 构造器的延伸  Vue.extend
			
Vue.extend 返回的是一个“扩展实例构造器”,也就是预设了部分选项的Vue实例构造器.经常服务于Vue.component用来生成组件,可以简单理解为当在模板中遇到该组件名称作为标签的自定义元 ...
 - 序列(seq)
			
序列(seq) 题目描述 给定 N,A,BN,A,B,构造一个长度为 NN 的排列,使得: 排列长度为 N: 最长上升子序列长度为 A: 最长下降子序列长度为 B. 我们有 SPJ,有解任意给出一组, ...
 - easyUI 接收Spring Mvc中@ResponseBody中文乱码解决
			
接触springMVC不够深入,乱码困扰我到深夜,特此留下记忆: @responsebody默认滴是ISO-8859-1 Controller注解参数 @ResponseBody 标注后返回Strin ...
 - 【一个比较bug free的二分写法】
			
lower_bound: [l, r)区间内大于等于val的第一个位置 int lower_bound(int l, int r, int val){ while(l < r){ ); if(a ...
 - 很好用的取代 PuTTY 的SSH远程登陆软件 Termius
			
一直以来, 我都是用 PuTTY 一个窗口一个窗口来监视我所有的远程服务器. putty-connections-on-a-screen 总感觉非常的不方便, 特别是当远程链接断开需要再重新打开PUT ...
 - HDOJ 1398 Square Coins
			
Square Coins Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tota ...
 - [LeetCode] Balanced Binary Tree 深度搜索
			
Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary ...
 - 基于Socket创建Web服务
			
基于Socket创建Web服务 为什么要使用Socket呢,我们来看下图