shell编程(一)
来源:互联网 发布:seo 优化 编辑:程序博客网 时间:2024/06/03 08:23
shell 编程
定义变量 `x=664` 在变量名.等号和值之间不能有空格输出指令 `echo` echo $x引号的区别 "" '' ""会将空格和分割都不转意,''会将值原样赋值export 将变量升为全局变量$()或`` 可以获取命令的返回值$? 表示上一个命令退出的状态$$ 表示当前进程编号$0 表示当前脚本名称$n 表示n位置的输入参数(n代表数字,n>=1)$# 表示参数的个数,常用于循环$*和$@ 都表示参数列表 expr m + n 计算整数计算$(((2+3)*4)) (2+3)*4计算
- 循环for
for n in 列表 do echo $n done或 for ((i = 0; i <= 5; i++)) do echo "welcome $i times" done
- 循环while
while expression do command … done i=1 while ((i<=3)) do echo $i let i++ done
- case
case $1 in start) echo "starting" ;; stop) echo "stoping" ;; *) echo "Usage: {start|stop} “ esac
- if 判断
if [ 条件 ] then echo elif [ 条件 ] echo else echo fi
例子
#!/bin/bashread -p "please input your name:" NAME#printf '%s\n' $NAMEif [ $NAME = root ] then echo "hello ${NAME}, welcome !" elif [ $NAME = wang ] then echo "hello ${NAME}, welcome !" else echo "get out here !"fi
条件:非空返回true,可使用$?验证(0为true,>1为false)
[ condition ] && echo OK || echo notok
条件满足,执行后面的语句
常用判断条件
- = 字符串比较
- -lt 小于
- -le 小于等于
- -eq 等于
- -gt 大于
- -ge 大于等于
- -ne 不等于
权限 - -r 有读的权限
- -w 有写的权限
- -x 有执行的权限
- -f 文件存在并且是一个常规的文件
- -s 文件存在且不为空
- -d 文件存在并是一个目录
- -b文件存在并且是一个块设备
- -L 文件存在并且是一个链接
shell 自定义函数
格式:
function name()
{
echo ” “;
return []
}
例子:
#!/bin/bashs1=$1;s2=$2;function sum(){ sum=$(($1+$2)); echo $((s1+s2)); return $sum;}sum 3 4;total=$?;echo $total,$?;
注:$?返回上个语句的返回值
sh -vx fun.sh 可以看到执行的过程,但是不停
如图:
阅读全文
0 0
- shell编程(一)
- shell 编程(一)
- shell 编程(一)
- shell编程(一)
- linux shell编程(一)
- Linux Shell 编程(一)
- Linux Shell 编程(一)
- shell编程(一)变量
- SHELL编程入门(一)
- shell脚本编程(一)
- shell编程基础(一)
- linux shell 编程(一)
- shell脚本编程(一)
- shell编程入门(一)
- shell编程(一) --- date
- shell脚本编程(一)
- linux shell 编程(一)
- shell编程(一)--入门
- Oracle_sql 基础_表与约束
- Linux VRF(Virtual Routing Forwarding)的原理和实现
- 解决前端Html5和Egret跨域请求Http数据的例子
- NM_CONTROLLED的含义以及网卡配置参数
- iOS UIView之间常用视图之间切换方式
- shell编程(一)
- phpstudy mysql数据库冲突问题解决
- centos 6 安装 telnet
- Java获取当前类名和当前方法名
- oj 相同数字
- 棋盘问题
- c++ primer 第四章
- 邻接表
- 通俗理解“Schmidt正交化”和“正交矩阵” 此博文包含图片(2015-05-19 09:50:47) 施密特正交化在空间上是不断建立垂直于原次维空间的新向量的过程。 如图β2垂直于β1(1维)