bash variables plus operator All In One】的更多相关文章

bash variables plus operator All In One Errors missing pass params #!/usr/bin/env bash # echo emoji ^-v-^ # echo " emoji ^-v-^" # = 两边不可以有空格 # arg1 = $1 # OK, no space arg1=$1 arg2=$2 sum=$(($arg1 + $arg2)) echo $arg1 echo $arg2 # -e 换行 echo -e…
References: [1] http://www.tldp.org/LDP/Bash-Beginners-Guide/html/ 1. Executing programs from a script When the program being executed is a shell script, bash will create a new bash process using a fork. This subshell reads the lines from the shell s…
There are two types of bash for loops available. One using the “in” keyword with list of values, another using the C programming like syntax.       This article is part of our on-going bash tutorial series.       This explains both of the bash for lo…
In bash shell, when you use a dollar sign followed by a variable name, shell expands the variable with its value. This feature of shell is called parameter expansion. But parameter expansion has numerous other forms which allow you to expand a parame…
前言:在bash中遇到各种括号,同时在进行字符数值比较判定时,总是不断出现问题,于是通过参考<advanced bash-scripting guide>,同时在centos 6.7版本上进行测试,现况总结如下.如有纰漏,望指正. 一.() 一个命令组合,相当于一个命令组 [root@mghuee~chunlanyy testdir]# I=;(I=xyz;echo $I;);echo $I xyz 二.{} 同"{}",也为一个命令组合,与"()"的区…
在bash脚本编程中,我们经常做一些条件判断, 我们主要用到了三种,test,单中括号,双中括号 经常有看到不同的写法,如: [ $? –eq ] [[ $myvar == “mysql” ]] test -eq 并且还有看到一些并且和或的写法,如-a,-o,&&,||. 那这些都是怎么结合,有那么多的比较符号,我怎么记住,有什么注意事项. 1.test命令 test是bash的一个内建命令,用来测试后面给的条件是否为真,如 [root@localhost ~]# test -ne [ro…
+, -, *(乘), /(除), **(乘方), %(取模) let var=算术运算符表达式 var=$[算术运算符表达式] var=$((算术运算符表达式)) var=$(expr $ARG1 OP $APG2) 注意:乘法符号在某些场景中需要使用转义符 练习:写一个脚本文件,完成如下功能:添加3个用户,求这3个用户的UID之和. #!/bin/bash id testUser1 > /dev/null || useradd testUser1 id testUser2 > /dev/n…
Bash Reference Manual a.summary-letter { text-decoration: none } blockquote.indentedblock { margin-right: 0 } blockquote.smallindentedblock { margin-right: 0; font-size: smaller } blockquote.smallquotation { font-size: smaller } div.display { margin-…
一.简介 [ 与 test 等价,是 bash 的内部命令,GNU/linux 系统的 coreutils 软件包通常带 /usr/bin/test 和 /usr/bin/[ 命令.如果我们不用绝对路径指 明,通常我们用的都是bash 自带的命令. [[ 是 bash 关键字(据说从2.02起引入对[[的支持) 二.异同分析 相同点 都支持算术比较 ("gt"."ge"."eq"."ne"."lt".&qu…
数据类型 日期时间类型 DATE(日期) DATE 数据类型由年.月.日信息组成,表示一个日期值. DATA 类型的默认格式为‘YYYY-MM-DD’. YYYY 表示年, MM 表示月而 DD 表示日.时间值的范围从 0001-01-01 至 9999-12-31. 数据类型扩展 除了内置的SQL数据类型,在SQLScript里用户可以自定义一些表类型的数据类型 标准数据类型 SQLScript类型系统是基于SQL-92类型系统的,它支持以下基础数据类型: Numeric types: TIN…
变量的名字是它的值保存的地方.引用它的值称为变量替换.$让我们仔细地区别变量和变量的值.如果variable1是一个变量的名字,那么$variable1就是引用这个变量的值――即这个变量它包含的数据.如果只有变量名出现(即指没有前缀$),那就可能是在1)声明一个变量或是在给这个变量赋值.2)声明废弃这个变量,3)导出(exported)变量,4)或是在变量指示的是一种信号的特殊情况.(参考例子 29-5).变量赋值可以使用等于号(=),比如:var1=27.也可在read命令和在一个循环的情况下…
shell脚本语法基础汇总 将命令的输出读入一个变量中,可以将它放入双引号中,即可保留空格和换行符(\n) out=$(cat text.txt) 输出1 2 3 out="$(cat text.txt)" 输出: 1 2 3 --------------[]一般用于算术比较 -gt 大于 -lt 小于 -ge 大于等于 -le 小于等于 逻辑与-a [ $var1 -eq 0 -a $var2 -gt 2 ] 逻辑或 [ $var1 -eq 0 -o $var2 -gt 2 ] […
1.创建文件夹#!/bin/shmkdir -m 777 "%%1" 2.创建文件#!/bin/shtouch "%%1" 3.删除文件#!/bin/shrm -if "%%1" 4.删除文件夹#!/bin/shrm -rf "%%1" 5.删除一个目录下所有的文件夹#!/bin/bashdirec="%%1" #$(pwd)for dir2del in $direc/* ; doif [ -d $dir2…
文本查找的需要grep,egrep,fgrep grep:Global Research.根据模式,去搜索文本,并将符合模式的文本行显示出来Pattern:文本字符和正则表达式的元字符组合而成匹配条件 grep: grep [options] PATTERN [FILE...] [root@localhost ~]# grep 'root' /etc/passwd root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sb…
bash&shell系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html test可用于测试表达式,支持测试的范围包括:字符串比较,算术比较,文件存在性.属性.类型等判断.例如,判断文件是否为空.文件是否存在.是否是目录.变量是否大于5.字符串是否等于"longshuai".字符串是否为空等等.在shell中,几乎所有的判断都使用test实现. 其中[]完全等价于test,只是写法不同.双中括号[[]]基本等价于[],它支…
grep命令 grep(global search regular expression)是一种强大的文本搜索工具,它可以使用正则表达式搜索文本,并把匹配的行打印出来.平时搜索文本中内容的时候是非常方便的. 格式: grep [option] pattern filename 主要选项: -A<显示列数> 除了显示符合范本样式的那一行之外,并显示该行之后的内容. -o 只输出文件中匹配到的部分. -v 反转查找. -i 忽略字符大小写的差别. -E 使用扩展正则表达式. -c 计算匹配到的列数…
1. SpEL功能简介 它是spring生态里面的一个功能强大的描述语言,支在在运行期间对象图里面的数据查询和数据操作.语法和标准的EL一样,但是支持一些额外的功能特性,最显著的就是方法调用以及基本字符串模板函数功能. SpEL是spring的产品列表中的基本功能. 2. 特性概要 Literal expressionsMethod invocationAccessing properties, arrays, lists, mapsInline listsArray constructionR…
使用第三方工具MySQL Enterprise Monitor,MySQL企业版监控工具.MONyog – MySQL Monior and Advisor,MONyog大家都不陌生,windows下比较好用的MySQLGUI提供者,也有相关MySQL监控工具. 脚本监控#!/bin/bash ### VARIABLES ###SERVER=`hostname`SECONDS_BEHIND_MASTER=`/usr/bin/mysql -e "SHOW SLAVE STATUS\G"|…
转载 http://blog.csdn.net/aggrelxf/article/details/8263110 单引 双引 反引用[] [[]] 将命令的输出读入一个变量中,可以将它放入双引号中,即可保留空格和换行符(\n) out=$(cat text.txt) 输出1 2 3 out="$(cat text.txt)" 输出: 1 2 3 --------------[]一般用于算术比较 -gt 大于 -lt 小于 -ge 大于等于 -le 小于等于 逻辑与-a [ $var1…
什么是正则: 正则就是一串有规律的字符串. 正则三剑客: grep/egrep (egrep是grep的扩展),sed, awk grep grep过滤指定关键词 [root@localhost grep]# grep 'nologin' passwd -c 行数 [root@localhost grep]# grep -c 'nologin' passwd 15 -i 不区分大小写 [root@localhost grep]# grep -i 'nologin' passwd -n 显示行号…
    在之前文章中,我们都是在命令行中写一些简短的awk命令,而awk做为一门解释型语言,一样是支持脚本运行的. 基本语法 #!/bin/awk -f # 注释 awk 脚本体 #!:同shell,约定格式 /bin/awk:采用的解释器位置 -f:awk选项,代表从文件中读取程序文件 #:同shell,除第一行的#以外,其他均代表为注释内容 脚本示例 1.第一个示例 [root@localhost awk]# vim test.awk [root@localhost awk]# cat te…
条件测试方法综述 test条件测试的简单语法及测试 范例6-1 测试文件(在test命令中使用-f选项:文件存在且为不同文件则表达式成立) [root@adminset ~]# test -f file && echo true || echo false false [root@adminset ~]# touch file [root@adminset ~]# test -f file && echo true || echo false true 范例6-2 测试字符…
1.echo `date` "doing  compling  . . . " if [ "$RELEASE" == "false" ]; then SNAPSHOT="-SNAPSHOT" fi   GIT_VERSION=`cat version` GIT_MAIN_VERSION=`echo $GIT_VERSION | awk -F"." '{print $1}'` GIT_MAJOR_VERSIO…
使用unix/linux的程序人员几乎都写过shell脚本,但这其中很多人都是为了完成功能而在网上找代码段,这样写出来的shell脚本在功能方面当然是没有什么问题,但是这样的方式不能写出优雅的shell脚本. 从今天开始,starfe就将自己平时在书写shell脚本过程中的经历做一总结,力图形成一个系列---"书写优雅的shell脚本". 在此,对"优雅"一词的定义有4点:(1)健壮:(2)结构清晰:(3)性能好:(4)力求简单. 好了,废话不多说,开始今天的主题:…
1. 如何安装 Epel源到 RHEL/CentOS 7/6/5? RHEL/CentOS rpm -ivh http://mirrors.ustc.edu.cn/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm RHEL/CentOS ## RHEL/CentOS # wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm # rpm -ivh…
1. 在文件中查找模式(单词) 在/etc/passwd文件中查找单词 root [root@localhost opt]# grep root /etc/passwdroot:x:0:0:root:/root:/bin/bashoperator:x:11:0:operator:/root:/sbin/nologin 2. 在多个文件中查找模式 在/etc/passwd  /etc/shadow /etc/gshadow文件中查找单词 root [root@localhost opt]# gre…
一.grep使用 (一).选项 -a 不要忽略二进制数据. -A<显示列数> 除了显示符合范本样式的那一行之外,并显示该行之后的内容. -b 在显示符合范本样式的那一行之外,并显示该行之前的内容. -c 计算符合范本样式的列数. -C<显示列数>或-<显示列数> 除了显示符合范本样式的那一列之外,并显示该列之前后的内容. -d<进行动作> 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep命令将回报信息并停止动作. -e<范本样式>…
已知3台服务器主机名分别为web01.backup .nfs主机信息见下表: 角色 外网IP(NAT) 内网IP(LAN) 主机名 WEB eth0:10.0.0.7 eth1:172.16.1.7 web01 NFS eth0:10.0.0.31 eth1:172.16.1.31 nfs Rsync eth0:10.0.0.41 eth1:172.16.1.41 backup 客户端: web nfs 服务端: backup 客户端需求 1.客户端提前准备存放的备份的目录,目录规则如下:/ba…
1.rsync的基础概述 1.什么是备份 相当于给源文件增加一个副本,但是备份只会备份当前状态的数据,当你在写数据是,不会备份新写入的数据,除非自己手动在备份一次. 2.为什么要做备份 1.需要备份一些重要的数据 2.防止误操作,防止数据丢失 3.数据被删除,还能快速恢复数据 3.能不能不做备份? 可以,不重要的数据可以不做备份,但是重要的数据建议做备份,以防万一 4.备份使用什么方法? 全量备份:每次都是完全拷贝,效率低下 增量备份:每次仅备份发生改变的文件,效率高 5.备份使用的工具有哪些?…
[root@node2 ~]# cp /etc/passwd /server/scprits/ [root@node2 ~]# cd /server/scprits/ [root@node2 scprits]# ls -l passwd -rw-r--r--. root root 12月 : passwd [root@node2 scprits]# sed -n '3a \ user.' passwd user. #第三行加入一行 [root@node2 scprits]# sed '/root…