#/bin/sh#author wj##rsync Start/Stop Rsync service##chkconfig:35 13 91#description:this is Rsync service management shell script#processname:rsyncd#Source function library. /etc/rc.d/init.d/functionsstart(){ rsync --daemon
if [ $? -eq 0 -a `ps -ef|grep -v grep|grep rsync|wc -l` -gt 0 ]; then
#if和中括号[]之间有个空格,分号;和then之间有个空格/etc/init.d/rsyncd: line 14: syntax error near unexpected token `then'
#–微软的word中和linux中的-不一样
action "Starting Rsync:" /bin/true sleep 1 else action "Starting Rsync:" /bin/false sleep 1 fi}stop(){ pkill rsync;sleep 1;pkill rsync #if [ $? -eq 0 -a ‘ps -ef|grep -v grep|grep rsync|wc -l’-lt 1 ]; then if [ `ps -ef|grep -v grep|grep "rsync --daemon" |wc -l` -lt 1 ]; then #“中文双引号应该是"英文双引号action "Stopping Rsync; ‘ps -ef|grep -v grep|grep rsync|wc -l’" /bin/truesleep 1elseaction "Stopping Rsync; ‘ps -ef|grep -v grep|grep 'rsync --daemon' |wc -l’" /bin/falsesleep 1fi}case "$1" in #case的c小写否则报错:/etc/init.d/rsyncd: line 33: Case: command not found start) #/etc/init.d/rsyncd: line 33: unexpected EOF while looking for matching `"' $1的双引号是中文 start #/etc/init.d/rsyncd: line 34: syntax error near unexpected token `)' 正确的"$1"用vim编辑是紫色的 ;; #/etc/init.d/rsyncd: line 34: ` start )' stop) stop ;; restart|reload) $0 stop $0 start ;; *)echo $"Usage: $0{start|stop|restart|reload}" ;; esac