mysql定义shell变量_shell 变量的定义,赋值,运算

一、变量类型

1.1、自定义变量

1.定义变量

不能使用纯数字命名,不能使用横杠命名

变量名=变量值

[root@localhost ~]# name=erha

2.引用变量

$变量名 或者 ${变量量名}

3.查看变量值

echo$变量量名

[root@localhost ~]# echo $name

erha

4.取消变量

[root@localhost ~]# unset name

[root@localhost ~]# echo $name

5.作⽤用范围

仅在当前shell中有效

1.2、系统环境变量

1.定义环境变量

export变量名

将⾃定义变量转换成环境变量,先定义,后准换

[root@localhost ~]# name=huahua

[root@localhost ~]# export name

2.引用环境变量

$变量名或 ${变量名}

3.查看环境变量

echo$变量名

[root@localhost ~]# echo $name

huahua

4.取消环境变量

unset变量量名

[root@localhost ~]# unset name

[root@localhost ~]# env |grep name

#取消该变量后,查询系统环境变量中,就没name这个变量了。

5.变量作⽤用范围

在当前shell和⼦shell有效

1.3、系统环境变量

$1$2$3$4$5$6 ...

#$1代表向脚本内传递的第一个位置参数,$2代表第二个,依次类推。

1.4、预定义变量

$0脚本⽂文件名

$* $@所有的参数

$#参数的个数

$$当前进程的 PID

$!上一个后台进程的 PID

$?上一个命令的返回值 0 表示成功

小脚本

[root@localhost ~]# cat var.sh

#!/bin/bash

echo "第一个参数:$1"

echo "第二个参数:$2"

echo "第三个参数:$3"

echo "第四个参数:$4"

echo "所有参数为:$*"

echo "参数个数为:$#"

echo "当前进程ID为:$$"

echo "上一个进程ID为:$!"

echo "当前脚本名称为:$0"

echo "当前脚本执行结果:$?"

执行如下

[root@localhost ~]# sh var.sh 1 2 3 4 5

第一个参数:1

第二个参数:2

第三个参数:3

第四个参数:4

所有参数为:1 2 3 4 5

参数个数为:5

当前进程ID为:8875

上一个进程ID为:

当前脚本名称为:var.sh

当前脚本执行结果:0

二、变量赋值

2.1、直接赋值

[root@localhost ~]# name=huahua

#注意等号两边不能有空格

2.2、从键盘读入

[root@localhost ~]# read 参数 变量名

可选参数

-p :提示信息

-t :等待时间

-n :读入字符数

小脚本

解压文件到指定位置

[root@localhost ~]# cat tr.sh

#!/bin/bash

read -p "请输入要解压的文件,及解压目录:" src dst

if [ -e $src ];then

tar -zxvf $src -C $dst

else

echo "没有该文件..."

fi

2.3、强引用与弱引用

"" :弱引用,特殊字符依旧有特定含义。

[root@localhost ~]# age=18

[root@localhost ~]# echo "$age"

18

'' :强引用,所有字符被当作普通字符处理。

[root@localhost ~]# echo '$name'

$name

2.4、命令执行结果引用

`` :反引号,不过容易与引号混淆。

[root@localhost ~]# t1=`date +%F`

[root@localhost ~]# echo $t1

2020-01-20

$():$加小括号,不容易混淆,一般使用这种方式较多

[root@localhost ~]# t2=$(date +%F)

[root@localhost ~]# echo $t2

2020-01-20

三、数学运算

3.1、整数运算(expr)

加 减 乘 除 取余

+ - \* / %

[root@localhost ~]# expr 1 + 1

2

[root@localhost ~]# expr 1 - 1

0

[root@localhost ~]# expr 1 \* 1

1

[root@localhost ~]# expr 1 / 1

1

[root@localhost ~]# expr 1 % 1

0

3.2、整数运算($(()))

加 减 乘 除 取余 幂运算

+ - * / % **

[root@localhost ~]# echo $((1 + 2))

3

[root@localhost ~]# echo $((1 - 2))

-1

[root@localhost ~]# echo $((1 * 2))

2

[root@localhost ~]# echo $((1 / 2))

0

[root@localhost ~]# echo $((1 % 2))

1

[root@localhost ~]# echo $((1 ** 2))

1

3.3、整数运算($[])

与 $(())类似

[root@localhost ~]# echo $[1+2]

3

[root@localhost ~]# echo $[1-2]

-1

[root@localhost ~]# echo $[1*2]

2

[root@localhost ~]# echo $[1/2]

0

[root@localhost ~]# echo $[1**2]

1

3.4、整数运算(let)

加 减 乘 除 取余 幂运算

+ - * / % **

[root@localhost ~]# let nu=2**4

[root@localhost ~]# echo $nu

16

3.5、小数运算

可以使用bc命令

[root@localhost ~]# echo "1.1"+"2.3"|bc

3.4

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/416368.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

angular的uiRouter服务学习(5) --- $state.includes()方法

$state.includes 方法用于判断当前激活状态是否是指定的状态或者是指定状态的子状态. $state.includes(stateOrName,params,options) $state.includes方法接受三个参数,其中第二和第三个都不知道是干啥的...估计也不太用得到,就暂时不管了... stateOrName:字符串(必填). 是一个…

前端学习(2487):在VUE中使用element-ui的el-select组件时出现该报错

一. 报错场景 在VUE中使用element-ui的el-select组件时出现该报错 [Vue warn]: Missing required prop: "value" 1 二. 报错原因 2.1.el-select中没有进行双向数据绑定(v-model) 2.2 el-option没有进行value赋值 三. 具体示例 3.1 报错…

php 正则mysql语句_MySQL正则表达式搜索 - mysql数据库栏目 - 自学php

products表如下:1. 基本字符匹配vcrH1NrV7j2wdDL0cv3o6zWu9KqcHJvZF9uYW1l1tCw/LqswcvLcvRy/e1xNfWt/uzb/J0tTBy6OstvhMSUtFyOe57K708PNqMXkt/ujrMTHw7TSqsfzcHJvZF9uYW1l0vL0cv3tcTX1rf70qrN6sirxqXF5KO60rKzcrHy7XPwsPmtcTA/dfTo6zQ6NKqyrnTwyBMSUtFIA"JetPa…

皇室战争

题目大意: 初始有E点体力值,每天可以开宝箱消耗k体力值,体力值要保证>0 每次开宝箱可获得k*a[i]的愉悦度 求最大愉悦度 样例输入115 2 22 1样例输出112样例1解释第一天用5体力, 接下来回复2点体力, 用光。限制与约定数据编号 cas N E 时间限制(S)0 10 10 10 11 100 100 100 …

python 类和对象 有必要学吗_类与对象-python学习19

类与对象类:我们常用类来划分一个个特定的群体;我们所说的类,是物以类聚的类,是分门别类的类,是多个类似事物组成的群体的统称。类的概念能帮助我们快速理解和判断事物的性质。类(class),比如整数、字符串、…

codevs 2822 爱在心中

时间限制: 1 s空间限制: 128000 KB题目等级 : 钻石 Diamond题目描述 Description“每个人都拥有一个梦,即使彼此不相同,能够与你分享,无论失败成功都会感动。爱因为在心中,平凡而不平庸,世界就像迷宫,却又让…

python 遍历对象_python js对象的遍历

下面是两组数据格式;都是以对象的形势;现在我要将属性值提取出来;做成一个二级部门导航栏;abc里面的做一级,asd做二级点击厂一宣示对应的部门;点击厂二时候宣示对应的部门;把原有的隐藏var abc{…

最简单的基于FFmpeg的移动端样例:IOS 视频转码器

最简单的基于FFmpeg的移动端样例系列文章列表:最简单的基于FFmpeg的移动端样例:Android HelloWorld最简单的基于FFmpeg的移动端样例:Android 视频解码器最简单的基于FFmpeg的移动端样例:Android 视频解码器-单个库版最简单的基于F…

php去除英文和标点,php 过滤英文标点符号及过滤中文标点符号代码_php技巧

php 过滤英文标点符号 过滤中文标点符号 代码function filter_mark($text){if(trim($text))return ;$textpreg_replace("/[[:punct:]\s]/", ,$text);$texturlencode($text);$textpreg_replace("/(%7E|%60|%21|%40|%23|%24|%25|%5E|%26|%27|%2A|%28|%29|%2B|%7C|…

java调用js匿名函数参数,js匿名函数作为函数参数详解

由衷的感叹,js真是烦。学到现在,渐渐理解了什么是:语言都是通用的,没有好不好,只有擅长不擅长。继承,多态,甚至指针,c能实现,c,java有,javascript…

php 顺序结构,顺序存储结构php实现

// php实现顺序存储$arr [1,3];ListInsert($arr, 2, 6);var_dump($arr);$e GetElem($arr, 2);var_dump($e);// 顺序存储结构的插入function ListInsert(Array &$arr, int $i, int $e){$count count($arr);if($i < 1 || $i > $count 1){throw new Exception(‘数据…

PHP_CodeIgniter _remap重新定义方法

如果controller定义了_remap方法&#xff0c; 在_remap中重新定义方法 class Test extends CI_Controller{public function index(){echo "hello world";}//index.php/Test/success/id/1aapublic function _remap($method,$params){if($methodsuccess){$method . 2; …

php20个字,北京人会说不会写的20个字,第一个我就跪了

这20个字你们都会写吗?扽■ 【读音】dn■ 【释义】拉&#xff0c;猛拉&#xff0c;使伸直或平整。■ 【举例】快来人啊&#xff0c;我扽不住他啦!熥■ 【读音】tēng■ 【释义】把已经熟了的食物再加热。■ 【举例】馒头凉了&#xff0c;熥熥再吃。皴■ 【读音】cūn■ 【释义…