生成文件shell脚本以及说明(一)

生成文件shell脚本以及说明:

#!/bin/sh

file1=$(date +%Y%m%d%H%M%S) #定义变量获取当前时间

ALM_TYPE=BOSS4ZC #定义变量

INSTANCE_ID=62100408#定义变量

STATUS=MAJOR#定义变量

ALM_INFO=Mysql备用主机宕机10.**.62.**,请及时处理.#定义变量

ALM_TIME=$(date +‘%Y-%m-%d %H:%M:%S‘)#定义变量

file2=$INSTANCE_ID.#定义变量

file3=.alm#定义变量

file_name=$file2$file1$file3#定义变量

cd /nms/almd/data/alm   #进入固定路径

touch $file_name  #创建文件

chown nms $INSTANCE_ID* #修改文件用户

chgrp bomc $INSTANCE_ID* #修改文件组

echo $ALM_TYPE";"$INSTANCE_ID";"$STATUS";"$ALM_INFO";"$ALM_TIME >> $file_name  #重定向到文件

file1_name=$file2$file3 #定义变量

touch $file1_name #创建文件

if [ ! -f "$file1_name" ]  #判断如果文件不存在

then

echo " $host mysql login successfully "

exit 0

else

#echo " $host mysql login faild"

mv /home/mysql/check_mysql_alarm.sh /home/mysql/check_mysql_alarm1.sh

exit 2

fi

#######################################################################

用crontab -e 命令,配置定时执行脚本:

* * * * * /nms/check_mysql.sh 1>/dev/null 2>&1

* * * * * /nms/check_mysql_ip.sh 1>/dev/null 2>&1

#每分钟执行一次/nms/check_mysql.sh脚本

注意:脚本手动执行:正常;crontab执行不生效;

总结原因:

1.shell脚本中绝对路径问题(尤其是生成文件路径)

2.crontab的环境变量问题(尤其是命令调用路径)

------------------------------------------------------

# crontab的配置文件!!!

------------------------------------------------------

[[email protected] scripts]# cat /etc/crontab

SHELL=/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin     # 将可执行文件复制到/usr/bin下

MAILTO=root

HOME=/

# For details see man 4 crontabs

# Example of job definition:

# .---------------- minute (0 - 59)

# | .------------- hour (0 - 23)

# | | .---------- day of month (1 - 31)

# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...

# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat

# | | | | |

# * * * * * user-name command to be executed

-------------------------------------------------------------

时间: 2024-12-30 01:16:13

生成文件shell脚本以及说明(一)的相关文章

清理hdfs小文件shell脚本

清理hdfs小文件shell脚本 #!/bin/bash echo "--------------------------------------------------------------------------------------------------------------------" echo "BASH_VERSION: $BASH_VERSION" echo "参数说明: " echo "从外部只传递零个参数时,

Centos 模拟生成文件的脚本

1 #!/bin/sh 2 count=100 #控制每秒写入不同大小的文件 3 4 while true 5 do 6 for ((i=1;i<=$count;i++)) 7 do 8 /bin/cp 10k.jpg /backup/test/$i/10k_`echo $(date)$RANDOM|md5sum|cut -c 1-8`.jpg 9 done 10 sleep 1 11 for ((i=1;i<=$count;i++)) 12 do 13 /bin/cp 30k.jpg /ba

每次读取指定目录、指定数量的文件shell脚本

#!/bin/sh PATH=/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin LANG=zh_CN.GB18030 export PATH LANG ANALYZER_HOME=$(cd "$(dirname "$0")"; pwd) cd $ANALYZER_HOME declare -a fileArr echo $1", "$2 function listDirFil

shell脚本每隔2s获取某个进程的cpu和mem数据并保存到csv文件

shell脚本每隔2s获取某个进程的cpu和mem数据并保存到csv文件 shell脚本如下echo "%CPU,%MEM" > cpu_test.csvpid=1 #Can be change by yourselfwhile true do top -bn1 -n 1 -p $pid | tail -1 | awk '{ print $9,$10 }' | sed 's/ /,/' >> cpu_test.csv sleep 2 #delay timedone 脚

在centos系统shell脚本中cat和重定向符号&lt;&lt;EOF结合使用的注意事项

在运维人员编写shell脚本中,有时会需要将一些内容直接放在到一个文件,比如在一个shell脚本中配置一些内容再生成一个shell脚本,此时可以使用到cat命令和重定向符号"<<"以及EOF的使用.但是,在shell脚本中使用重定向符号生成shell脚本时,会遇到一些问题,比如,内容中含有特殊符号"#","`","$"时,(如果以"#"开头,则需要加转义符"\")重定向会忽略

shell 脚本编程基础篇

一级标题 二级标题 1.编程基础 Linus:Talk is cheap, show me the code 程序组成 程序:算法+数据结构 数据:是程序的核心 算法:处理数据的方式 数据结构:数据在计算机中的类型和组织方式 面向过程语言 做一件事情,排出个步骤,第一步干什么,第二步干什么,如果出现情况A,做什么处理,如 果出现了情况B,做什么处理 问题规模小,可以步骤化,按部就班处理 以指令为中心,数据服务于指令 C,shell 面向对象语言 一种认识世界.分析世界的方法论.将万事万物抽象为各

基本shell脚本的边界及变量

 shell脚本与变量  shell脚本的用途: 自动化常用命令 执行系统管理和故障排除 创建简单的应用程序 处理文本或文件  shell脚本编写格式: 第一行:shebang机制 用#加shell类型开头 后续可直接跟命令,用命令达到需要的效果即可 如需内容注释行首加#即可 例如: #/bin/bash #testcat /etc/passwd  shell脚本执行方法: bash /绝对路径 加入$PATH变量,给脚本文件添加执行权限,然后直接输入脚本文件名即可运行 cat /脚本路径 |

第三周、文本处理工具、shell脚本编程

文本处理工具 1.cut -d指定分隔符.比如-d: -d' ' -f指定取第几列.比如-f1,3 --output-delimiter指定显示的分隔符 tr -s压缩 -d删除 -c除了 2.使用tr和cut取磁盘的百分比 [[email protected] data]# df -h | tr -s ' ' | cut -d' ' -f5 | tr -dc '[0-9]\n' 0 0 5 0 32 67 32 0 3.取IP [[email protected] data]# ifconfi

shell脚本生成xml文件

今天把这段时间学习完shell后完成工作上的一个小案件整理了一下,分享给大家! 说来也巧了,作为一个刚刚毕业半年的菜鸟,进入公司后,听公司的大牛推荐学习linux--”鸟哥的私房菜“,基本上是从去年8月份开始到了今年的1月份,基本上是把基础篇看完了,开始了解shell脚本的相关知识.刚好公司有了一个shell脚本的案件给我了,时间上也没有多紧.然后就一边学习一边开始做,虽然中途客户反映先前的业务逻辑有问题耽搁了两周,但总算是到最后完成了,自己学习的东西能用到很开心,今天闲了,把代码整理了一下,分