首页
学习
活动
专区
工具
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.2K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    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 中的运算符左右必须包含空格,如果不包含空格,将会输出表达式本身: 例子 练习 提示用户输入一个正整数num,然后计算1+2+3+…+num的值;必须对num是否为正整数做判断

    31120

    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.4K30

    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.2K20

    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 返回1 ;否则返回0 num1 中的运算符左右必须包含空格,如果不包含空格,将会输出表达式本身: 例子 练习 提示用户输入一个正整数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.2K30

    开源部分组内实用运维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 永远存最大值 # 如果输入的不是这样的顺序

    30320

    3小时精通shell脚本

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

    51820

    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编程基础入门

    (是否为空、是否定义等)来改变它的值 变量替换 可以使用的变量替换形式: 形式说明${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

    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 如果文件可执行,则结果为真 这,真的是一个利民的测试

    54430

    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。

    3.1K10

    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 的值。

    32020

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券