Shell编程
文章平均质量分 56
centos2015
主要研究LAMP环境、系统架构、负载均衡、网络工程、网络安全等。
展开
-
Shell 小程序演示
一般的shell编程 场景贯穿了几个熟知的步骤:●显示消息●获取用户输入●存储值到文件●处理存储的数据这里写一个小程序 包含以上几部#!/bin/bash while truedo#echo "phone number?"read -p "phone number:" phone#echo "name?"read -p"name:" namedate=`date "+%Y.%m.%d %H:%M:原创 2017-10-10 21:56:21 · 303 阅读 · 0 评论 -
笔试题 shell
企业实践题1:(生产实战案例):监控MySQL主从同步是否异常,如果异常,则发送短信或者邮件给管理员。提示:如果没主从同步环境,可以用下面文本放到文件里读取来模拟:阶段1:开发一个守护进程脚本每30秒实现检测一次。阶段2:如果同步出现如下错误号(1158,1159,1008,1007,1062),则跳过错误。阶段3:请使用数组技术实现上述脚本(获取主从判断及错误号部分)原创 2017-11-21 09:18:07 · 1539 阅读 · 0 评论 -
shell 编程基础
linux默认的shell /bin/bash用户登陆后默认的bash是在 /etc/passwd中设置的 历史命令记录在 /.bash_history 中(上次登陆的记录,本次在内存中)alias 别名设置 例:alias lm='ls -al'type 内置命令、外部命令 例:type ls\ 命令太长时 换行符各种系统变量echo $PAT原创 2017-10-11 15:18:19 · 232 阅读 · 0 评论 -
inotify + rsync 目录同步脚本
#!/bin/shSRC=/var/www/channel/DST=/var/www/webroot/channel/INWT=/usr/local/bin/inotifywaitRSYNC=/usr/bin/rsync$INWT -mrq -e create,move,delete,modify $SRC | while read D E F;do原创 2017-10-20 17:26:29 · 950 阅读 · 0 评论 -
bash通配符 shell正则表达式
在linux中通配符是系统命令使用,一般用来匹配文件名或者什么的用在系统命令中。通配符是系统级别的,通配符多用在文件名上,比如查找find,ls,cp,rm 正则表达式是操作字符串,以行尾单位来匹配字符串使用的。正则表达式需要相关工具的支持 例如 : egrep, awk, vi, perl。在文本过滤工具里,都是用正则表达式,比如像awk,sed等,是针对文件的内原创 2017-10-29 21:47:47 · 1152 阅读 · 0 评论 -
监控ps aux 程序不存在则重启
监控 tomcat ,如果自动停止了,则重新启动#!/bin/bashStart=/usr/local/apache-tomcat-8.0.24/bin/startup.shUrl="/usr/local/jdk1.8.0_51/bin/java -Djava.util.logging.config.file=/usr/local/apache-tomcat-8.0.24/con原创 2017-10-12 13:52:30 · 321 阅读 · 0 评论 -
Shell 重启程序
有个程序必须用 kill -9 pid号 关闭后,才能重新启动,每次都要手动查找pid号,麻烦容易出错,写个shell脚本就三行很方便,自动查找pid号-关闭程序-重启程序#!/bin/bashpid=`ps aux|grep xxx|grep -v grep|awk '{print $2}'`kill -9 $pid原创 2017-10-11 10:14:09 · 2322 阅读 · 0 评论 -
增加 server httpd 控制脚本
原版的脚本里 查看status 需要用 lynx这个命令,还要开启http://localhost:80/server-status 比较麻烦,我直接注释了,新加的代码用红色字体#!/bin/sh#chkconfig: 2345 50 90#description: httpd is web server# Licensed to the Apache Software Foundation原创 2017-10-11 09:49:11 · 394 阅读 · 0 评论 -
shell脚本 定期删除日志
定期删除日志:然后建立清除日志文件的shell脚本,文件名为clean_log只保留最近三天的日志#! /bin/bashlogdir=/var/log/httpdcd ${logdir}declare -i filesum=`ls access_log.* | wc -l`declare -i delnum=$filesum-3if [ "${delnum}" -ge 1 ];thenrm -r原创 2017-10-11 09:48:56 · 1949 阅读 · 1 评论 -
Shell 增加server rsync 控制脚本
[root@backup ~]# vim /etc/init.d/rsync#!/bin/bash #this script for start|stop rsync daemon service status1=$(ps -ef | egrep "rsync --daemon.*rsyncd.conf" | grep -v 'grep') pidfile="/var/run/rsyncd.pid原创 2017-10-11 09:48:39 · 231 阅读 · 0 评论 -
Shell 统计导出数据 awk 里使用shell变量 参数
有一个数据文件 yue.csv 是这样的#head yue.csv 日期,商家名称,要求在线数,当天在线数,要求在线时长,在线时长达标数,……"2017-12-31","唐河馆","10","3","09:00-17:00","1",……"2017-12-15","唐河馆","10","3","09:00-17:00","1",……"2016-12-01","宛城馆","10","1","09原创 2017-10-10 21:56:35 · 631 阅读 · 0 评论 -
Shell 硬盘监控
用shell 写了一个硬盘监控的小程序#!/bin/bashMAX=95EMAIL=zonghua@iyunshu.comPART=sda1IP=`ifconfig |grep -w "broadcast"|awk '{print $2}'`use=`df -h | grep $PART | awk '{print $5}'| cut -d'%' -f1`if [ $use -ge $MAX ];原创 2017-10-10 21:56:24 · 368 阅读 · 0 评论 -
shell 教程
read 接收键盘输入:read [-pt] variable-p:提示语-t :等待时间例:read -p "input:" -t 20 adeclare 定义变量类型: declare [-aixr] variable选项与参数:-a :将后面名为 variable 的变量定义成为数组 (array) 类型-i :将后面名原创 2017-10-27 17:26:21 · 567 阅读 · 0 评论