在工作中遇到的问题,此nginx.sh配置脚本是我在Googel下载下来的,实际复制贴貼到服务器中运行时发现前面都有 001-100的行标识符,外带空格,影响运行和美观啊;本来想一行行删除,后来不禁自己也鄙视自己:这也太没技术含量了吧?具体解决方法如下:
①首先在 vim里删除所有行首数字,如下所示:
1
|
:%s/^[0-9][0-9]*
//
|
②然后再删除所有行首空字符,如下所示:
1
|
sed
-i
's/^[[:space:]]*//'
nginxd.sh
|
整个nginxd.sh脚本如下,有兴趣的朋友也拿着练下手。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
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来执行的话就比较简单了,如下所示的一句命令就可以搞定需求了:
1
|
sed
-i -e
's@^[0-9][0-9]*@@ '
-e
's@^[[:space:]]* @@'
nginx.sh
|
本文转自 抚琴煮酒 51CTO博客,原文链接:http://blog.51cto.com/yuhongchun/504993,如需转载请自行联系原作者