[root@m01 ~]# rsn_count="ps -ef|grep 'rsync --d[a]emon'|wc -l"
[root@m01 ~]# echo ${rsn_count}
ps -ef|grep 'rsync --d[a]emon'|wc -l
[root@m01 ~]# eval ${rsn_count} 变量多次获取值得思路: 定义变量 每次执行的时候就执行 eval ${rsn_count}
每次获取的都是新值, 第二种思路: 一开始
rsn_count=$(ps -ef|grep 'rsync --d[a]emon'|wc -l) 获取变量
然后再次获取的时候 执行命令ps -ef|grep 'rsync --d[a]emon'|wc -l 获取
[root@m01 ]# cat ryn_srv.sh 

#!/bin/bash
rsn_file="/usr/bin/rsync"
# 判断启动的进程数 [ -e /etc/init.d/functions ] && source /etc/init.d/functions || echo "/etc/init.d/functions 不存在"
[ -e ${rsn_file} ] || {
echo "${rsn_file} 服务不存在"
exit
}
args1=$ function start() {
if [ $(ps -ef|grep "rsync --d[a]emon"|wc -l) -gt ]
then
echo "rsync 已经启动" else ${rsn_file} --daemon
sleep
[ $(ps -ef|grep "rsync --d[a]emon"|wc -l) -gt ] && action "rsync 启动成功" /bin/true || echo "启动失败" fi } function stop() { if [ $(ps -ef|grep "rsync --d[a]emon"|wc -l) -gt ]
then
killall rsync
killall rsync &>/dev/null
sleep
[ $(ps -ef|grep "rsync --d[a]emon"|wc -l) -lt ] && action "rsync 关闭成功" /bin/true || echo "关闭失败" else echo "rsync 已经关闭" fi } function restart() {
stop
sleep
start
} case $args1 in
start)
start
;;
stop) stop
;; restart) restart
;; *)
echo "Usage {start|stop|restart}"
;; esac

15:开发Rsync服务启动脚本案例的更多相关文章

  1. logstash服务启动脚本

    logstash服务启动脚本 最近在弄ELK,发现logstash没有sysv类型的服务启动脚本,于是按照网上一个老外提供的模板自己进行修改 #添加用户 useradd logstash -M -s ...

  2. 自己编写服务启动脚本(一):functions文件详细分析和说明

    本文目录: 1.几个显示函数2.action函数3.is_true和is_false函数4.confirm函数5.pid检测相关函数 5.1 checkpid.__pids_var_run和__pid ...

  3. centos6服务启动脚本及开机启动过程

    centos6服务启动脚本 centos6的服务启动脚本都放在/etc/rc.d/init.d/下,/etc/init.d/是/etc/rc.d/init.d/的软链接: centos6的服务启动脚本 ...

  4. [shell脚本] mysql服务启动脚本

    服务启动脚本(初始化.启动.登录) #!/bin/bash export PID=/usr/local/nestdb_master/bin/mysqld export PASSWORD=123456 ...

  5. rsync随机启动脚本

    服务端 #!/bin/sh # chkconfig: # description: Saves and restores system entropy pool for \ #create by xi ...

  6. Nginx的编译安装及服务启动脚本

    1.解决依赖关系 编译安装nginx需要事先需要安装开发包组"Development Tools"和 "Development Libraries".同时,还需 ...

  7. linux下服务启动脚本

    #!/usr/bin/env python# -*- coding: utf-8 -*-# @File : deployment.py# @Author: Anthony.waa# @Date : 2 ...

  8. LVS Director端服务启动脚本

    #!/bin/bash # 手动安装lpvs前端管理工具 # chkconfig: - # # lvs启动脚本:director # lvs模式类型:nat.dr.ipip # lvs代理协议:tcp ...

  9. 【Linux开发】Linux启动脚本设置

    前言linux有自己一套完整的启动 体系,抓住了linux启动 的脉络,linux的启动 过程将不再神秘.阅读之前建议先看一下附图.本文中假设inittab中设置的init tree为:/etc/rc ...

随机推荐

  1. identifier is too long 异常处理

    修改了oracle中的表. 报 identifier is too long 错误 我执行的脚本是: ---备份create table MDT_AGREEMENTMANAGEMENT_2018080 ...

  2. JVM OQL查询语言

    OQL查询语言 SELECT Clause The SELECT clause determines what to extract from the heap dump. To display ob ...

  3. 设计工具-MindManager(思维导图)

    1,百度百科 http://baike.baidu.com/view/30054.htm?from_id=7153629&type=syn&fromtitle=MindManager& ...

  4. SQL注入之导出WebShell

    已经听N个人过说有人已经发现SQL注入Access得到webshell的技术了,也只是听说而已,具体的细节还是不得而知. 最近在看的书中一章提到Jet的安全,然后灵光一闪,呵呵,发现了一种可以利用ac ...

  5. 用iptables做NAT代理,使内网机器上外网

    现状:服务器A只有一个内网IP,不能上外网,内网IP与服务器B内网相通:服务器B有一个内网IP和公网IP.想实现服务器A也能上外网. 1 2 3 4 服务器A:内网网卡:eth0 内网IP:192.1 ...

  6. Java获取日期属于当年第几周

    String today = "2013-01-14"; SimpleDateFormat format = new SimpleDateFormat("yyyy-MM- ...

  7. Android开发之JNI(一)--HelloWorld及遇到的错误解析

    Android开发之JNI(一)--HelloWorld及遇到的错误解析 1.NDK环境搭建    參考http://blog.csdn.net/xiaoliouc/article/details/8 ...

  8. Python Socket API 笔记

    将上节中的C#该成Python版的容易程度大大超出了我的意料之外.从来没有发现,仅仅用灰尘简单的几句话就实现了该程序的主要功能,可见python的简易和强大之处.这里先对SocketAPI 做一下总结 ...

  9. 编程算法 - 推断二叉树是不是平衡树 代码(C)

    推断二叉树是不平衡树 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 输入一颗二叉树的根结点, 推断该树是不是平衡二叉树. 二叉平衡树: 随意结 ...

  10. css选择器和xpath对照表