echo

mysql 数据库备份shell脚本

回眸只為那壹抹淺笑 提交于 2020-01-22 08:29:44
今天大样做了个简单的数据库备份脚本 #!/bin/bash # Database info bakupmysql TANK 2009/11/04 DB_USER="user" #用户名 DB_PASS="password" #密码 DATE=`date '+%Y%m%d-%H%M'` #要备份的日期 BIN_DIR="/usr/bin" BCK_DIR="/usr/local/database/database_bak/$DATE" #备份路径 LogFile="/usr/local/database/data_backup.log" #日志路劲    if [ ! -d $BCK_DIR ]; then mkdir -p "$BCK_DIR" fi echo "=================================== $DATE backup"===============================>>$LogFile cd $BCK_DIR #需要备份的库DB_NAMES=("db1" "db2") for dbName in ${DB_NAMES[@]}; do echo "begin backup $dbName...">>$LogFile #备份 ${BIN_DIR}/mysqldump --opt -h 192.168.1.104 -u${DB

从头开始学Shell------数字计算

試著忘記壹切 提交于 2020-01-22 02:55:32
一、数字计算 (1)整数:使用let的话,变量就不再需要$了。 再写一个简单的 shell脚本,上传到/opt目录下,取名为test.sh。 #!/bin/bash no1=3 no2=4 let result=no1+no2 echo $result let result-- #自减,需要加上let! echo $result (2)整数:另外一种是用 【】 与 (()) (3)浮点数 浮点数的赋值比较奇葩。 ` echo “计算” | bc ` 。 这个符号在键盘的Esc键下面。 保留小位数,在计算的表达式里增加 scale=X; 的前缀。但是好像有变量的时候,就不能成功保留小数。 综上,写一个shell。注意的点: 表达式两边不能有空格。let后面的不能是浮点数。单引号不做任何解析,用双引号加${varName} #!/bin/bash echo 'price=3' echo 'count=2' let price=3 count=$[1+1] money=`echo "$price * $count * 0.982" |bc` echo "price * count * 0.982=${money}" 来源: CSDN 作者: 小大宇 链接: https://blog.csdn.net/yanluandai1985/article/details/104062163

Linux shell 特殊变量解析

二次信任 提交于 2020-01-22 00:29:07
文章目录 一、$0 二、\$1~n 三、$# 四、$* 五、$@ 六、$$ 七、$! 八、$? 九、$- 十、举个例子 Shell 变量的命名规范和大部分编程语言都一样: 变量名由数字、字母、下划线组成; 必须以字母或者下划线开头; 不能使用 Shell 里的关键字(通过 help 命令可以查看保留关键字)。 但是 shell 有一些特殊变量,并不遵守上面的命名规范。 一、$0 指当前 shell 脚本的文件名。 二、$1~n 传递给 shell 脚本 或者 shell 函数 的参数。 n 是一个数字,表示第几个参数。 例如: $1 是第1个参数 $2是第2个参数 … 以此类推。 三、$# 传递给 shell 脚本 或者 shell 函数的位置参数的个数。 四、$* 传递给 shelll 脚本 或者 shell 函数的所有参数列表。 这里所有的位置参数都会被看成一个字符串。 五、$@ 传递给 shelll 脚本 或者 shell 函数的所有参数列表。 这里每个位置参数会被看做一个独立的字符串。 六、$$ 当前 shell 进程的 ID,即 PID(ProcessID) 七、$! shell 最后运行的后台进程的 PID 。 八、$? 最后运行的命令的结束代码(返回值) ,表示上一次命令是否执行成功: 0 : 表示执行成功, 非0 : 表示执行失败 九、$- echo $ -

实时监测Tomcat服务的状态,如果关闭,自动开启(已解决)

最后都变了- 提交于 2020-01-21 23:44:24
前几天写了一个实时监测tomcat的 脚本 ,之前是检测的tomcat进程是否存在,如果不存在,就开启 start.bat 。但是在项目部署的时候(我的项目部署在了Windows系统中了),tomcat有时会自动关闭,但是在用start.bat开启时,运行一段时间,回报 Java(TM)Platform SE binary已停止工作 导致脚本检测到进程关闭,也无法正常开启tomcat。于是我就用开启服务的办法来开启tomcat, 一下脚本是检测tomcat服务运行的状态,如果tomcat服务关闭,就自动开启。 @echo off rem 定义循环间隔时间(10s)和监测的服务: set secs=10 set srvname="Tomcat8" echo. echo ======================================== echo == 查询计算机服务的状态, == echo == 每间隔%secs%秒种进行一次查询, == echo == 如发现其停止,则立即启动。 == echo ======================================== echo. echo 此脚本监测的服务是:%srvname% echo. if %srvname%. == . goto end :chkit set svrst=0 for /F

python vim 自动补全

好久不见. 提交于 2020-01-21 22:23:36
mkdir -pv ~/.vim/bundle cd ~/.vim/bundle git clone https://github.com/rkulla/pydiction.git cp -r ~/.vim/bundle/pydiction/after/ ~/.vim echo 'filetype plugin on' > ~/.vimrc echo 'let g:pydiction_location = "~/.vim/bundle/pydiction/complete-dict"'>> ~/.vimrc echo 'let g:pydiction_menu_height = 3' >> ~/.vimrc 来源: CSDN 作者: 如醒似梦 链接: https://blog.csdn.net/qq_30945363/article/details/104064229

“(( ))” 双括号运算符使用

旧城冷巷雨未停 提交于 2020-01-21 20:10:49
1、第一行要写明shell种类 #! / bin / bash 2、打印输出 #! / bin / bash echo "Hello World !~" 3、变量定义 变量=前后不能有空格,字符串要用“或‘ 或 不用 变量是若定义的,不定义也可使用,既:值为空 变量可以用 { } 括起来,明确变量名称的范围 #! / bin / bash v_name = "LiKun" v_id = 1 echo $v_name echo ${v_name}_good echo $v_id echo $null . / test.sh LiKun LiKun_good 1 变量替换 a=${b:-0}如果b为空值,则用0代替b赋给a;b有值则不再作任何替换 x=${1:-0}用户没有输入参数,则用0代替$1 变量截取 a=1234567 echo ${a:3}4567从第三个字符开始到最后 echo ${a:3:2}45从第三个字符开始截取两个 echo ${a#*3}从任意字符开始直到截取到3123 echo ${#a}7变量的字符数 4、字符串, 变量定义,单引号和双引号的区别 使用双引号的变量,可以调用变量,也可以使用转义符 '\' #! / bin / bash v_name = "LiKun" v_id = "${v_name}_aa" echo $v_name echo $v_id

shell学习——(二)

帅比萌擦擦* 提交于 2020-01-21 19:37:46
接着上一章,shell的基本概念介绍完后,具体介绍一些实用和常用的shell内建命令。 一、echo echo将参数打印到标准输出,参数之间以一个空格隔开,并以换行符结尾。 例如,$ echo "Enter your name: "这里引号可以不用 二、printf printf可以输出简单的字符串,例如 printf “Hello, world\n” 不同于echo,它不会自动提供一个换行符号。你必须显示地将换行符号指定成\n。 printf format-string [ arguments .. . ] 第一部分是一个字符串,用来描述输出的排列方式,最好为此字符串加上引号。此字符串包含了按字面显示的字符以及格式声明,后者是特殊的占位符,用来描述如何显示相应的参数。 例如 $ printf “The first program always prints ‘%S, %S!’\n” Hello world 三、 基本的I/O重定向 标准输入/输出:程序应该有数据的来源端,数据的目的端以及报告问题的地方,它们分别为标准输入、标准输出和标准错误输出。 默认的标准输入、标准输出以及标准错误输出都是终端。 例如$ cat now is the time #用户键入 now is the time # 由cat返回 重定向与管道 shell使用数种于发表基,改变默认的来源端与目的端。 以

Trying to print properties of stdClass object in Php starting with literal '$'

邮差的信 提交于 2020-01-21 09:55:47
问题 My object name is $distinct1 print_r($distinct1) shows the object below but when I try to do echo $distinct1->properties->city OR echo $distinct1->distinct_id I don't get any value return. Any idea whats going on? stdClass Object ( [$distinct_id] => AAA [$properties] => stdClass Object ( [$city] => Palo Alto [$country_code] => US [$region] => California [$name] => John Smith ) ) 回答1: Hm, if your properties are really named like that: $distinct1->{'$properties'}->{'$city'} But if possible, I'd

Trying to print properties of stdClass object in Php starting with literal '$'

ⅰ亾dé卋堺 提交于 2020-01-21 09:52:14
问题 My object name is $distinct1 print_r($distinct1) shows the object below but when I try to do echo $distinct1->properties->city OR echo $distinct1->distinct_id I don't get any value return. Any idea whats going on? stdClass Object ( [$distinct_id] => AAA [$properties] => stdClass Object ( [$city] => Palo Alto [$country_code] => US [$region] => California [$name] => John Smith ) ) 回答1: Hm, if your properties are really named like that: $distinct1->{'$properties'}->{'$city'} But if possible, I'd

Linux shell编程学习笔记(一)

て烟熏妆下的殇ゞ 提交于 2020-01-21 04:57:27
Linux shell编程笔记 一:脚本开头固定格式: #!/bin/bash 申明这是一个shell脚本文件 二:脚本保存后缀为 .sh ;运行.sh的方式有两种: (1)./接文件名.sh的方式运行 (2)/bin/sh ./文件名.sh 区别:第一种直接以点斜杠运行的方式,有时候需要先赋予文件可执行权限,第二种方式则可以直接运行,不需要赋予执行权限 三:shell脚本 (1)变量定义:直接A=123或者FILE=“D:/xuexi/” 即可 (2)变量的引用:$A或者$FILE 注意$与变量名之间不能有空格;$不仅可以引用变量,也可以直接引用其他命令的执行结果,然后赋值给其他变量 如:USER=$(cat /root/users.txt) (3)系统常用的一些变量引用: $# 是传给脚本的参数个数 $0 是脚本本身的文件名 $1 是脚本后接的第一个参数 $2 是脚本后接的第二个参数 $@ 是传给脚本的所有参数列表,"$1" "$2" "$3" … "$n" $* 是以一个单字符串显示传给脚本的所有参数,"$1 $2 $3 … $n" $$ 是脚本运行的当前进程ID号 $? 是最后运行命令的结束状态码,0表示没有错误,其他表示有错误 (4)Linux中没有单引号 表示字符或者字符串需要用双引号引起来; 注意单引号与反引号的区别:反引号是键盘上Esc键下的那个键,与单引号是不同的