目标:一键部署php5.6.0版本环境:CentOS 6 64位 桌面版本软件包:链接:http://pan.baidu.com/s/1jIyZrRS 密码:q9uu[root@salt-master home]# cat php.sh #/bin/bash##CentOS 6#. /etc/init.d/functionsdir=/root/testdel_dir() { read -
目标:一键部署nginx软件:tengine-2.1.2.tar.gz(nginx的分支)备注:只适用于CentOS 6 64位系统,附带线上生产环境的nginx配置文件软件包:链接:http://pan.baidu.com/s/1jIyZrRS 密码:q9uu[root@salt-master home]# cat nginx.sh #!/bin/bash##适用版本CentOS 6
需求:yum安装vsftpd后,减少配置环节软件包:链接:http://pan.baidu.com/s/1jIyZrRS 密码:q9uu思路:1、yum安装vsftpd2、使用脚本替代手工进行配置部署[root@linux-node7 ~]# cat vsftpd.sh #!/bin/bash#仅适用于CentOS6.x 64位版本#. /etc/init.d/functionsdir=
需求:源码编译apache环境:CentOS 6 64位系统安装的桌面版软件:httpd-2.4.12.tar.gz、pcre-8.31.tar.bz2、apr-util-1.5.3、apr-1.5.1.tar.gz备注:目前只在centos 6环境下测试过,如果有报错可能是依赖包安装有缺失,本来想把这几个源码包上传上去的,上传一直失败,以上几个源码包需要到网上下载一下软件包:链接:http://
需求:写一个rsync服务启动脚本思路:1、首先对脚本参数个数进行判断如果传参个数不等于1,则echo "Usage: $0 {start|restart|stop}"2、定义函数service,通过case进行对脚本传参值的流程控制判断3、启动服务采用命令rsync --daemon4、停止服务采用kill -9 进程和删除rsync的PID文件[root@salt-master test]#
首先我要说cut是个好东西,只要默认格式是以制表符分割的字符串,它都能截取。一、语法:cut [-bn] [file] 或 cut [-c] [file] 或 cut [-df] [file] #但是我死活不会用啊因为cut可以对标准输入、标准输出的数据进行截取,所以我比较喜欢使用类似echo "test" |cut -c 1-3 、cat test
目标:对Mysql从库进行状态监控,如果从库复制异常就告警思路:1、首先查找Mysql从库的4个参数值(show slave status根据这个命令);分别是从库的IO线程、SQL线程、复制延迟时间(这个在以下脚本没用到,可以再写个脚本对其延迟进行告警)、错误码2、函数Mysql_status判断,对IO线程、SQL线程、错误码三者逻辑与判断3、如果为假则执行函数Mysql_Errno4、对于m
需求:服务器http并发连接数多的就用iptables拒绝掉思路:1、首先通过netstat统计当前http连接数(大于3个连接就将连接数统计值和连接IP重定向到/root/black.txt)2、将白名单IP写入到/root/white.txt(防止之后iptables将一些正常请求的IP拒绝掉)3、运行命令awk '{print $2}' /root/black.txt 获取打印连接数过高的I
简介awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行读入,以空格为默认分割符将每行切片,切开的部分再进行各种分析处理。使用方法:awk [option] 'pattern1{action1}pattern2{action2}' {filenames}尽管操作可能会很复杂,但语法总是这样,其中patter
数组的定义 何为数组?学过计算机编程语言的同学都知道,数组的特性就是一组数据类型相同的集合(不包括有一些编程语言提出来的关联数组的概念)。那么shell中数组是怎么定义呢,我们来看两种数据类型:一是数值类型,二是字符串类型;虽然shell本身是弱类型的,但也可以这么区分。 数值类型的数组:一对括号表示数组,数组中元素之间使用"空格"来隔开。举个例子数值类型:arr_numb
简介: linux shell编程中也会使用到函数,函数可以把大的命令集合分解成若干较小的任务,也避免重复编写相同的代码。在shell中,所有的函数定义都是平行的,即不允许在函数体内再定义其他的函数,但允许函数直接相互调用。函数又涉及到很多基本使用:函数参数调用、函数返回值、局部变量及全局变量、函数间的相互调用和函数递归调用函数:功能,function代码重用:库:共享对象函数就是把其
简介: shell编程中循环命令用于特定条件下决定某些语句重复执行的控制方式,有三种常用的循环语句:for、while和until。while循环和for循环属于“当型循环”,而until属于“直到型循环”。循环控制符:break和continue控制流程转向。详解1、for循环for循环常见有2种结构:一种是带列表的for循环,第二种是类C风格的for循环列表for循环for var
在编写shell脚本的过程中,我们经常需要使用sed流编辑器和awk对文本文件进行处理。什么是sed? sed是一种在线编辑器,它一次处理一行内容。sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结构。默认情况下,所有的输出行都被打印到屏幕上。sed的处理过程是什么? sed编辑器逐行处理文件(或输入),并将结果发送到屏幕。具体过程如下:首先sed先
条件判断式只要讲到程序的话,那么条件判断式,亦即是if then这种判别式肯定一定要学习的,另外一种是case...esacif....then这个是if...then 是最常见的条件判断式了,它分为单分支条件判断式,双分支条件判断式,多分支条件判断式单分支条件判断语句:if [ 条件判断式 ]then 输出内容fi双分支条件判断式:if [ 条件判断式 ]then
bash的变量类别有以下几类,区分好变量类别能让我们更好的理解bash基础:本地变量(局部变量)环境变量特殊变量位置变量本地变量(局部变量)作用域为整个bash进程。仅对当前shell进程有效,对子shell无效。比较好理解的就是我复制了一个变量,我的子shell并不能够使用到这个变量环境变量作用域为当前shell进程及其子进程查看环境变量的常用命令为:export env特殊变量$?:表示引用前
1.作用Linux系统中的grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。2.格式命令输出格式为grep [option]3.主要参数[option]主要参数-c:只输出匹配行的计数-I:不区分大小写-n:显示匹配行及行号--color:打印匹配的颜色-o:只匹配该行的匹配信息-v:显示不包含匹配的文本的所有行-A:表示匹配行后面的几行-B:表示匹配行前面的
什么是expect expect是基于tcl的相对简单的一个免费的脚本编程工具语言,用来实现自动和交互式任务程序进行通信,无须人手工干预,比如ssh ftp 等,这些程序正常情况下都需要手工与他们进行交互,而使用expect就可以模拟人手工交互的过程,实现自动的和远端的程序交互,从而到达自动化的目的expect程序工作流程 expect的工作流程可以理解为,sp
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号