首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux基础(五)

,就会返回相应的错误代码 6、算术运算 查看bash算术运算:help let 常用算术运算符:+、-、*、/、%、**(乘方) 算术运算实现: 1 let var=算术表达式 注意: let i=...aa bb aa结束运算 (aa命令失败,执行bb命令) 实例: 1、判断用户存在否,在返回用户名否则创建该用户 id $name &> echo $name is exist useradd...9、条件测试 判断某需求是否满足,需要有测试机制来实现 专用的测试表达式需要由测试命令辅助完成测试过程 评估布尔声明,以便用在条件执行 若真,返回0 若假,返回1 测试命令 test EXPRESSION...--> 1 : -z真, uset x--> [ -z $x ] --> echo $?...b c echo $b yyy -->echo $c zzz read m n l 12、bash如何展开命令行 把命令行分成单个命令词 展开别名 展开大括号的声明{} 展开波浪符声明~ 命令替换$

1.2K80

Bash基础训练指南

上面的代码将提示用户输入,然后将用户输入的作为字符串/文本存储在变量。 然后,我们可以使用该变量并向它们返回一条消息。 以上脚本的输出过程: 首先运行脚本: ....,则为真: [[ ${string1} > ${string2} ]] 算术运算符 如果两个数相等,返回true: [[ ${arg1} -eq ${arg2} ]] 如果数字不相等,返回true...: [[ ${arg1} -ne ${arg2} ]] 如果arg1小于arg2,返回true [[ ${arg1} -lt ${arg2} ]] 如果arg1小于或等于arg2,返回true:...[[ ${arg1} -le ${arg2} ]] 如果arg1大于arg2,返回true: [[ ${arg1} -gt ${arg2} ]] 如果arg1大于或等于arg2,返回true: [..." name done echo "Hi there ${name}" 现在,如果我们运行上面的操作,并且只按enter而不提供输入,那么循环将再次运行并一次又一次地询问我们的姓名,直到我们真正提供输入为止

2.1K10
您找到你想要的搜索结果了吗?
是的
没有找到

shell脚本极简教程

可以使用的变量替换形式: 形式 说明 ${var} 变量本来的值 ${var:word} 如果变量 var 或已被删除(unset),那么返回 word,但不改变 var 的值。...${var:=word} 如果变量 var 或已被删除(unset),那么返回 word,并将 var 的值设置 word。 ${var:?...message} 如果变量 var 或已被删除(unset),那么将消息 message 送到标准错误输出,可以用来检测变量 var 是否可以被正常赋值。...若此替换出现在Shell脚本,那么脚本将停止运行。 ${var:+word} 如果变量 var 被定义,那么返回 word,但不改变 var 的值。   请看下面的例子: #!...[ -z $a ] 返回 false。 -n 检测字符串长度是否0,不为0返回 true。 [ -z $a ] 返回 true。 str 检测字符串是否,不为返回 true。

1.8K60

Shell脚本编程

不能使用标点符号 不能使用bash的关键字 有效命名: RUNOOB LD_LIBRARY_PATH _var var2 无效命名: ?...增强赋值: +=,‐=,*=,/=,%= 乘法符号有些场景需要转义 : *\ bash有内建随机数生成器:$RANDOM 完成算数运算 () let var(变量名)=算术表达式 () var=$[算术表达式...=:是否不等于 =~:左侧字符串是否能够被右侧的PATTERN所匹配 Note:此表达式一般用于[[ ]] ‐z “STRING”:测试字符串是否则为真,不则为假 ‐n “STRING”:测试字符串是否不...来获取返回值 函数参数 funWithParam(){ echo "第一个参数 $1 !" echo "第二个参数 $2 !" echo "第十个参数 $10 !"...并检测服务是 否重启成功 2.若未成功则需要再次启动,若重启5次依旧没有成功,向管理员发送告警邮件(使用echo输 出已发送即可),并退出检测 3.如果启动成功,等待1分钟后再次检测mysql进程数

2.1K20

Shell 编程(一):Shell 变量的高级用法

变量测试 变量配置方式 Str没有配置 Str空字符串 Str已配置且非 var=${str-expr} var=expr var= var=$str var=${str:-expr} var=expr...在脚本显示定义的函数和内容 在脚本显示定义的函数 将变量声明为环境变量 声明变量数组 1).声明变量只读类型 # example.sh string="Hello world"; declare...# example7.sh echo $num4 Bash Copy 输出 #第一行 122 Bash Copy 6).声明变量数组 # example.sh declare -a array...操作符 含义 num1 | num2 num1不为且非0 ,返回num1 ;否则返回num2 num1 & num2 num1不为且非0,返回num1 ;否则返回0 num1 < num2 num1...使用 expr 命令时,表达式的运算符左右必须包含空格,如果不包含空格,将会输出表达式本身: 例子 练习 提示用户输入一个正整数num,然后计算1+2+3+…+num的值;必须对num是否正整数做判断

27620

Bash概论 - Linux系列教程补充篇

学习过程,遇到问题就查一下。...字符串操作符(替换操作符) ${var:-word}: 如果var存在且不为, 返回它的值, 否则返回word ${var:=word}: 如果var存在且不为, 返回它的值, 否则将word赋给var..., 返回它的值 ${var:+word}: 如果var存在且不为, 返回word, 否则返回空 ${var:?...message} 如果var存在且不为, 返回它的值, 否则显示“-bash: var: message”, 然后退出当前命令或脚本 ${var:offset[:length]} 从offset位置开始返回..., 读取参数到内置变量OPTARG 内置变量OPTIND保存着将被处理的命令行参数(位置参数)的数值选项列表处理完毕getopts返回1, 否则返回0 如: 在我们推出的一步绘图脚本里面,就是使用Bash

1.2K70

Bash脚本编程(原创)

=:不等于则为真 单目: -n String: 是否不,不则为真,则为假 -z String: 是否则为真,不假 3、条件测试语句和循环语句 3.1、if语句 格式: (1) 一般...4、如果在函数中使用 exit,则可以退出整个脚本,而退出函数只是返回到调用函数的地方。 5、return 命令返回函数中最后一个命令的退出状态值或者是给定的参数值。...(2)忽略信号: 如果 trap 后面跟一对括号,列表的信号将被进程忽略。...;如果quit,退出脚本;否则,继续完成下面的步骤; 3、repo name以及baseurl的路径,而后以repo文件的格式将其保存至指定的文件; 4、enabled默认为1,而gpgcheck...,就退出; 2、如果用户指定的网卡存在,让用户其指定一个别名,此别名可以为如果,请确保其事先不存在,否则,要报错,并让用户重新输入; 3、在用户输入了一个正确的别名后,请用户输入地址和掩码;

1.3K30

shell 教程,这次我要步步详解,学会了以后能早点下班

:当前shell进程,上一个命令的返回值,如果上一个命令成功执行$?的值0,否则为其他非零值,常用做if语句条件 $$:当前shell进程的pid $!...} #结果 a="test" echo ${a-default} #结果test (2)${var:-default}:如果变量var没有被声明或者已经声明,但是赋值,那么就使用默认值,否则就使用..., 无论var的值或者var初始化为一个值,都使用alt_value, 如果没有声明就为. (2)${var:+alt_value}:如果变量var被初始化为一个非的值, 那么就使用alt_value..., 如果没有被声明或者已声明但初始化为值就为 (1)${var?...来显示上一条命令执行的返回值,如果0代表执行成功,其他表示失败。 ```bash if [ $?

4.1K20

Shell 编程(一):Shell 变量的高级用法

Str没有配置 Str空字符串 Str已配置且非 var=${str-expr} var=expr var= var=$str var=${str:-expr} var=expr var=expr...声明变量类型整型 在脚本显示定义的函数和内容 在脚本显示定义的函数 将变量声明为环境变量 声明变量数组 1).声明变量只读类型 # example.sh string="Hello world...0 ,返回num1 ;否则返回num2 num1 & num2 num1不为且非0,返回num1 ;否则返回0 num1 < num2 num1小于num2 ,返回1 ;否则返回0 num1 <= num2...使用 expr 命令时,表达式的运算符左右必须包含空格,如果不包含空格,将会输出表达式本身: 例子 练习 提示用户输入一个正整数num,然后计算1+2+3+…+num的值;必须对num是否正整数做判断.../bin/bash while true do read -p "pls input a positive number :" num expr $num + 1 &> /dev/null

1.1K30

开源部分组内实用运维shell脚本模版

/bin/bash # 检测本机当前用户是否超级管理员,如果是管理员,使用 yum 安装 vsftpd,如果不 # 是,提示您非管理员(使用字串对比版本) if [ $USER.../bin/bash # 检测本机当前用户是否超级管理员,如果是管理员,使用 yum 安装 vsftpd,如果不 # 是,提示您非管理员(使用 UID 数字对比版本) if [ $...如果用户 # 不输入账户名,提示必须输入账户名并退出脚本;如果用户不输入密码,统一使用默 # 认的 123456 作为默认密码。...read -p "请输入用户名: " user #使用‐z 可以判断一个变量是否,如果,提示用户必须输入账户名,并退出脚本,退出码 2 #没有输入用户名脚本退出后,使用$?...read -p "请输入一个整数:" num3 # 不管谁大谁小,最后都打印 echo " # num1 永远存最小的值,num2 永远存中间值,num3 永远存最大值 # 如果输入的不是这样的顺序

27020

3小时精通shell脚本

[ -f FILE ] 如果 FILE 存在且是一个普通文件返回真。 [ -r FILE ] 如果 FILE 存在且是可读的返回真。...[ -w FILE ] 如果 FILE 存在且是可写的返回真。(一个目录为了它的内容被访问必然是可执行的) [ -x FILE ] 如果 FILE 存在且是可执行的返回真。...[ -z STRING ] 如果STRING的长度返回真,即是真 [ -n STRING ] 如果STRING的长度非零返回真,即非是真 [ STRING1 ]  如果字符串不为返回真...= STRING2 ] 如果字符串不相同返回真 [ STRING1 < STRING2 ] 如果 “STRING1”字典排序在“STRING2”前面返回真。...EXPR ] 逻辑非,如果 EXPR 是false返回真。 [ EXPR1 -a EXPR2 ] 逻辑与,如果 EXPR1 and EXPR2 全真返回真。

46720

Linux Bash Shell入门教程

来引用就可以了;BASH返回值可以用 return 语句来指定返回一个特定的整数,如果没有 return 语句显式的返回一个返回值,返回值就是该函数最后一条语句执行的结果(一般 0,如果执行失败返回错误码..."$var" 同样是对变量的引用吧,对 ${var} 进行一些变化就可以产生一些新功能: ${var-default} 表示如果变量 $var 还没有设置,保持 $var 没有设置的状态,并返回后面的默认值...${var+otherwise} 表示如果变量 $var 已经设置,返回 otherwise 的值,否则返回空( null )。 ${var?...err_msg} 表示如果变量 $var 已经设置,返回该变量的值,否则将后面的 err_msg 输出到标准错误输出上。 请同学们自己尝试下面的例子: #!...表示该行是一个命令,如果被用在 while/until 的头结构表示值 0,会使循环一直进行下去,如下例: while :  do  operation-1  operation-2  ...

2.8K40

shell脚本知识记录

$name任然可以识别,但是如果在单引号是就无法适用$name的方式来调用变量 read读取输入值 这个功能就像java的readline来读取,使用方法 #!...$n表示依次能读取到的变量 但是如果参数变量不够,$i会被赋值 #!.../bin/bash a=1+2 b=$a+3 echo $a echo $b exit 0 结果却看到 1+2 1+2+3 那在Shell解决这个问题大概有这么几种方法 let关键字 #!...= string2  如果两个字符串不同,结果就为真 -n string 如果字符串不为结果真 -z string 如果字符串一个空串(null),结果真 这里需要注意下,-n 和 -z...-r file 如果文件可读,结果真 -s file 如果文件大小不为0,结果真 -w file 如果文件可写,结果真 -x file 如果文件可执行,结果真 这,真的是一个利民的测试

52630

shell编程基础入门

(是否、是否定义等)来改变它的值 变量替换 可以使用的变量替换形式: 形式说明${var}变量本来的值${var:-word}如果变量 var 或已被删除(unset),那么返回 word,但不改变...${var:=word}如果变量 var 或已被删除(unset),那么返回 word,并将 var 的值设置 word。${var:?...message}如果变量 var 或已被删除(unset),那么将消息 message 送到标准错误输出,可以用来检测变量 var 是否可以被正常赋值。...-n检测字符串长度是否0,不为0返回 true。[ -z $a ] 返回 true。str检测字符串是否,不为返回 true。[ $a ] 返回 true。 #!...-x file检测文件是否可执行,如果是,返回 true。[ -x $file ] 返回 true。-s file检测文件是否(文件大小是否大于0),不为返回 true。

1.3K40

Linux Shell编程入门

3、Shell替换 形式 说明${var}变量本来的值${var:-word}如果变量 var 或已被删除(unset),那么返回 word,但不改变 var 的值。...${var:=word}如果变量 var 或已被删除(unset),那么返回 word,并将 var 的值设置 word。${var:?...message}如果变量 var 或已被删除(unset),那么将消息 message 送到标准错误输出,可以用来检测变量 var 是否可以被正常赋值。...[ -z $a ] 返回 false。-n检测字符串长度是否0,不为0返回 true。[ -z $a ] 返回 true。str检测字符串是否,不为返回 true。...-x file检测文件是否可执行,如果是,返回 true。[ -x $file ] 返回 true。-s file检测文件是否(文件大小是否大于0),不为返回 true。

3K10

Shell脚本学习1

/bin/bash a=11 echo "a is $a \n" echo -e "a is $a \n" a is 11 \n a is 11 6、命令替换 变量替换可以根据变量的状态(是否、...可以使用的变量替换形式: 形式 说明 ${var} 变量本来的值 ${var:-word} 如果变量 var 或已被删除(unset),那么返回 word,但不改变 var 的值。...${var:=word} 如果变量 var 或已被删除(unset),那么返回 word,并将 var 的值设置 word。 ${var:?...message} 如果变量 var 或已被删除(unset),那么将消息 message 送到标准错误输出,可以用来检测变量 var 是否可以被正常赋值。...若此替换出现在Shell脚本,那么脚本将停止运行。 ${var:+word} 如果变量 var 被定义,那么返回 word,但不改变 var 的值。

29520
领券