在工作中遇到的问题,此nginx.sh配置脚本是我在Googel下载下来的,实际复制贴貼到服务器中运行时发现前面都有 001-100的行标识符,外带空格,影响运行和美观啊;本来想一行行删除,后来不禁自己也鄙视自己:这也太没技术含量了吧?具体解决方法如下:
①首先在 vim里删除所有行首数字,如下所示:
:%s/^[0-9][0-9]* //
②然后再删除所有行首空字符,如下所示:
sed -i 's/^[[:space:]]*//' nginxd.sh
整个nginxd.sh脚本如下,有兴趣的朋友也拿着练下手。
001 #!/bin/sh
002
003 # source function library
004 . /etc/rc.d/init.d/functions
005
006 # Source networking configuration.
007 . /etc/sysconfig/network
008
009 # Check that networking is up.
010 [ ${NETWORKING} = "no" ] && exit 0
011
012 RETVAL=0
013 prog="nginx"
014
015 nginxDir=/usr/local/nginx
016 nginxd=$nginxDir/sbin/nginx
017 nginxConf=$nginxDir/conf/nginx.conf
018 nginxPid=$nginxDir/nginx.pid
019
020 nginx_check()
021 {
022 if [[ -e $nginxPid ]]; then
023 ps aux |grep -v grep |grep -q nginx
024 if (( $? == 0 )); then
025 echo "$prog already running..."
026 exit 1
027 else
028 rm -rf $nginxPid &> /dev/null
029 fi
030 fi
031 }
032
033 start()
034 {
035 nginx_check
036 if (( $? != 0 )); then
037 true
038 else
039 echo -n $"Starting $prog:"
040 daemon $nginxd -c $nginxConf
041 RETVAL=$?
042 echo
043 [ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
044 return $RETVAL
045 fi
046 }
047
048 stop()
049 {
050 echo -n $"Stopping $prog:"
051 killproc $nginxd
052 RETVAL=$?
053 echo
054 [ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx $nginxPid
055 }
056
057 reload()
058 {
059 echo -n $"Reloading $prog:"
060 killproc $nginxd -HUP
061 RETVAL=$?
062 echo
063 }
064
065 monitor()
066 {
067 status $prog &> /dev/null
068 if (( $? == 0 )); then
069 RETVAL=0
070 else
071 RETVAL=7
072 fi
073 }
074
075 case "$1" in
076 start)
077 start
078 ;;
079 stop)
080 stop
081 ;;
082 restart)
083 stop
084 start
085 ;;
086 reload)
087 reload
088 ;;
089 status)
090 status $prog
091 RETVAL=$?
092 ;;
093 monitor)
094 monitor
095 ;;
096 *)
097 echo $"Usage: $0 {start|stop|restart|reload|status|monitor}"
098 RETVAL=1
099 esac
100 exit $RETVAL另注:如果单纯只用sed来执行的话就比较简单了,如下所示的一句命令就可以搞定需求了:
sed -i -e 's@^[0-9][0-9]*@@ ' -e 's@^[[:space:]]* @@' nginx.sh
本文介绍如何使用Vim和sed命令去除Nginx配置脚本中的行号及前导空格,提供了一个具体的Nginx启动脚本示例,并展示了如何通过sed命令一次性完成文本清理。
33万+

被折叠的 条评论
为什么被折叠?



