Linux Shell变量
200 ? "200px" : this.width)!important;}
-->
介绍
变量是shell脚本中必不可少的组成部分,在脚本中使用变量不需要提前声明。在bash中每一个变量都是字符串,所以在变量赋值时候不管有没有使用引号都是以字符串的形式存储,但是如果值中存在特殊字符就需要用引号将值进行引用, 在bash中可以使用单引号或者双引号。
环境:centos 6.7
赋值
给变量赋值:
var=value
特别注意变量和值之间不要存在空格,否则会被认为是等值判断,比如[var = value]
调用变量只需要在变量前加上$
输出变量:
echo $value
或
echo ${value}
例:写一个shell脚本输出今天的日期
vim assign
#!/bin/bash
var=`date +'%Y-%m-%d'`
echo "today is $var"
运算
[]、(())
注意上面的两种是固定的写法,都是用来在shell中做算术运算,并且在这两个操作符前都需要使用$符合,在括号里面变量前可以使用$也可以不使用
#!/bin/bash
var1=
var2=
result1=$[var1+var2]
result2=$[$result1+]
result3=$((result2+))
result4=$(($result3+))
echo $result1 $result2 $result3 $result4
在shell环境中可以使用let,[],(())进行基本的算术运算。
let
let的算术运算包括,let本身也可以进行赋值
方法1:简单算术运算
var1=
var2=
let result=var1+var2
方法2:自加
let var2++ 等同于 let var2=var2+
方法3:简写
let var2+=
等同于
let var2=var2+
脚本
#!/bin/bash
var1=
var2=
let result=var1+var2
let var2++
let var1+=
printf "var1=1 var2=2 \n"
printf "%-10s %-8s %-6s\n" var1+var2 var2++ var1+=5printf "%-10s %-8s %-2s \n" $result $var2 $var1
let var=
echo $var
注意:上面只是测试了加法运算,对于其他的算术运算都支持,但是只支持整形,对于存在小数的运算不支持。
高级运算bc
支持小数运算
语法
echo " " | bc
如果要将bc运算出的结果作为变量可以这样
result=`echo " " | bc `
#!/bin/bash
echo "0.5*10" | bc var=
result=`echo "$var*0.5" | bc`
echo $result
总结
赋值算法还是比较简单,后面慢慢完善
备注: 作者:pursuer.chen 博客:http://www.cnblogs.com/chenmh 本站点所有随笔都是原创,欢迎大家转载;但转载时必须注明文章来源,且在文章开头明显处给明链接。 《欢迎交流讨论》 |
Linux Shell变量的更多相关文章
- Linux shell 变量 数学 运算
Abstract : 1) Linux shell 中使用 let , [ ] ,(( )) 三种运算符操作 shell 变量进行简单的基本运算: 2)Linux shell 中使用 expr 与 ...
- python文件读写操作与linux shell变量命令交互执行
python对文件的读写还是挺方便的,与linux shell的交互变量需要转换一下才能用,这比较头疼! #coding=utf-8 #!/usr/bin/python import os impor ...
- Linux shell变量详解
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个 ...
- Linux Shell 变量自加
转至:https://blog.csdn.net/dj0379/article/details/50946398/ declare -i iv=$svnvlet iv+=1shell中变量自增的实现方 ...
- 《Linux shell变量总结回顾》RHEL6(转)
文章版权:http://www.cnblogs.com/linux-super-meng/ 环境变量路径: [root@localhost ~]# set //查看到的是局部变量和全局变量2种 [ ...
- linux shell变量$#,$@,$0,$1,$2的含义解释
变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 ...
- Linux - Shell变量的配置守则
变量的配置守则 变量与变量内容以一个等号『=』来连结,如下所示: 『myname=VBird』 等号两边不能直接接空格符,如下所示为错误: 『myname = VBird』或『myname=VBird ...
- linux shell 变量子串
linx变量子串 在本例子中,变量 test=https://www.//cnblogs./com//jjmaokk/p/10135401.html 1,${#parameter} 返回变量$para ...
- linux shell变量的截取
变量的截断,经常用到的是${},##和%%几个特殊符号.假设我们定义了一个变量为:file=/dir1/dir2/dir3/my.file.txt ,可以用${ }分别替换得到不同的值: ${file ...
随机推荐
- jetbrains产品激活方式(WebStorm,Pycharm有效)
注册时,在打开的License Activation窗口中选择"activation code",在输入框输入下面的注册码 43B4A73YYJ-eyJsaWNlbnNlSWQiO ...
- Java 中英文数字排序
//网上找的一个例子自己修改了下分享下,可以传多个排序字段数组 public class SortList<E>{ public static Logger loger = LoggerF ...
- 两表(多表)关联update的写法
SQL Server示例: update a set a.gqdltks=b.gqdltks,a.bztks=b.bztks from landleveldata a,gdqlpj b where a ...
- android命令抓LOG
手机和电脑,在电脑上开3个命令窗口,分别输入如下3个命令分别抓取mainLog.radioLog和kernalLog adb logcat -v time >main.txt adb logca ...
- nginx新增绑定域名
例如我要使binzz.com也绑定到原有的www.binzz.com上,在server上添加下面代码: server { listen 80; server_n ...
- Java中super的几种用法并与this的区别
1. 子类的构造函数如果要引用super的话,必须把super放在函数的首位. class Base { Base() { System.out.println("Base"); ...
- 1211php面向对象
首先需要定义数组,$attr = array(直接给元素1,2,3)索引数组 关联数组 $attr = array("one"=>1,2,3) for($i=0;$i< ...
- n+1 < n , are you sure?
密码终于找回了,原来是我邮箱把改密链接的邮件当垃圾邮件了-- 回到正题,这是道面试题,原话大致是这样的: n+1<n成立吗?请说明. 当时我听到这个题后直觉是成立的,但是想不到怎么回事,后来别人 ...
- 猿团YTFCloud--5分钟自制APP,开发从未如此简单
9月15日,YTFCloud将正式开启内测, 这意味着猿团YTF框架产品线全面升级.同时,公测过后,YTFCloud的APP线上DIY服务将面向所有用户,让人人都能成为APP“开发商”. 什么是YTF ...
- SQL一致性错误修复SQL
USE master; ); SET @databasename = 'BenlaiTask'; ALTER DATABASE BenlaiTask SET SINGLE_USER WITH ROLL ...