博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux基础(6)-shell编程
阅读量:5985 次
发布时间:2019-06-20

本文共 1305 字,大约阅读时间需要 4 分钟。

shell脚本

shell脚本程序:以文件形式存放批量的linux命令集合,该文件能够被shell释放执行。通常由一段linux命令、shell命令、控制语句以及注释语句构成。
shell脚本特点:
  • 第一行需指定用哪个程序来编译和执行脚本,如#!/bin/bash 或者#!/bin/sh
  • 通常shell脚本以.sh为后缀
shell脚本执行权限:
  • 有执行权限,可以./filename.sh
  • 无执行权限,可以sh filename.sh

 

变量与引用
定义变量
  • 定义变量时变量名不加美元符号
  • 注意等号两边不能有空格如:name="wujiadong"
  • 变量名不能以数字开头
  • export命令可以使变量用于子进程
  • 变量赋值时,若值中有空格,必须使用双引号括起来
使用变量
  • 使用一个定义过的变量,只要在变量名前加美元符号。
  • 显示变量:echo $name 或echo ${name}
  • 清除变量:unset name

实例1

test11.sh

1 #!/bin/bash2 v1="feigu"3 export v2="wujiadong"  #export命令可以使变量用于子进程4 5 echo "显示v1:$v1"6 echo "显示v2:$v2"7 8 sh test12.sh

test12.sh

1 #!/bin/sh2 echo "引用变量v1:$v1"3 echo "引用变量v2:$v2"

执行sh.test11.sh

 

控制结构
判断
test -e filename 表示是否存在
-e 是否存在 
-f 是否存在且为档案(file)
-d 是否存在且为目录(directory)
 
-r 是否存在且有可读权限
-w 是否存在且有可写权限
-x 是否存在且有可执行权限
 
两个数之间判断 :test n1 -eq n2
-eq 两数值相等(equal)
-ne 两数值不等(not equal)
-gt n1大于n2(greater than)
-lt n1小于n2(less than)
-ge n1大于等于n2(great than or equal)
-le n1小于n2(less than or equal)
 

判断字符串的数据

test -z string 判断字符串是否为0,string为空字符串,则为true
test -n string 判断字符串是否非为0,string为空字符串,则为false。注:-n可省略
test str1 = str2 判断str1是否等于str2,若相等,则回传true
test str1 != str2  判断str1是否不等于str2,若相等,则回传false

 

if else

if 条件then 命令fi 或者 if 条件then 命令1else 命令2fi或者if 条件1    then 命令1elif 条件2    then 命令2else 命令3fi 注意:这里elif是else if的缩写,但不支持else if的写法

 

 

转载于:https://www.cnblogs.com/wujiadong2014/p/5712550.html

你可能感兴趣的文章
Java设计模式系列之策略模式
查看>>
Sql异常①
查看>>
Jquery 校验文本框只能输入负数、小数、整数
查看>>
官宣:深度剖析免费OA系统是如何盈利
查看>>
vue2.0学习笔记(一)搭建学习环境
查看>>
数据库热备产品都有哪些?各有什么优缺点?
查看>>
生成树协议(STP)
查看>>
hadoop大数据基础框架技术详解
查看>>
Apache日志分割&日志分析
查看>>
JVM内存结构 VS Java内存模型 VS Java对象模型
查看>>
__main__:1: Warning: Unknown table 'employ' 0L
查看>>
Linux练习题-文件查找
查看>>
python bottle 简介
查看>>
设计微服务的最佳实践
查看>>
后缀.COLORIT勒索病毒分析和解决方案,.COLORIT勒索病毒如何处理
查看>>
oracle数据库命令-持续更新
查看>>
http://cuiqingcai.com/993.html
查看>>
redis安装使用
查看>>
【干货】Java岗面试考点大合集
查看>>
Android安全开发之浅谈密钥硬编码
查看>>