1
1
#! /bin/bash
2
2
# clean-html-js.sh
3
3
4
- VER=" 1.3"
5
- GREEN=" \033[1;32m"
6
- RED=" \033[0;31m"
7
- YELLOW=" \033[1;33m"
8
- ENDCOLOR=" \033[0m"
4
+ VER=" 1.4"
9
5
10
6
tproc=` basename $0 `
11
- echo -e $GREEN " $tproc version $VER " $ENDCOLOR
7
+ echo -e " $tproc version $VER "
12
8
echo " "
13
9
14
10
usage ()
15
11
{
16
12
tproc=` basename $0 `
17
- echo -e $YELLOW " usage:" $ENDCOLOR
18
- echo -e $GREEN " bash $tproc input.html" $ENDCOLOR
13
+ echo -e " usage:"
14
+ echo -e " bash $tproc input.html"
19
15
echo " options:"
20
- echo " -c not clean comment (default = false);"
16
+ echo " -c clean comment (default = false);"
17
+ echo " -i iconvert (default = false);"
21
18
echo " -n not verify type file (default = false);"
22
19
echo " -o str output path (default = input.utf8.html);"
23
20
echo " -r rewrite file (default = false);"
@@ -29,45 +26,30 @@ usage()
29
26
testcomponent ()
30
27
{
31
28
tnocomp=" "
32
- tcomp=" /usr/bin/iconv"
33
- tdeb=" libc-bin_*.deb"
34
- if [ ! -f " $tcomp " ]
29
+ tcomp=" iconv"
30
+ [ ! " $( command -v $tcomp ) " ] && tnocomp=" $tnocomp $tcomp "
31
+ tcomp=" enca"
32
+ [ ! " $( command -v $tcomp ) " ] && tnocomp=" $tnocomp $tcomp "
33
+ tcomp=" sed"
34
+ [ ! " $( command -v $tcomp ) " ] && tnocomp=" $tnocomp $tcomp "
35
+ tcomp=" grep"
36
+ [ ! " $( command -v $tcomp ) " ] && tnocomp=" $tnocomp $tcomp "
37
+ if [ " x$tnocomp " != " x" ]
35
38
then
36
- tnocomp=" $tnocomp $tcomp ($tdeb )"
37
- fi
38
- tcomp=" /usr/bin/enca"
39
- tdeb=" enca_*.deb"
40
- if [ ! -f " $tcomp " ]
41
- then
42
- tnocomp=" $tnocomp $tcomp ($tdeb )"
43
- fi
44
- tcomp=" /bin/sed"
45
- tdeb=" sed_*.deb"
46
- if [ ! -f " $tcomp " ]
47
- then
48
- tnocomp=" $tnocomp $tcomp ($tdeb )"
49
- fi
50
- tcomp=" /bin/grep"
51
- tdeb=" grep_*.deb"
52
- if [ ! -f " $tcomp " ]
53
- then
54
- tnocomp=" $tnocomp $tcomp ($tdeb )"
55
- fi
56
- if [ " +$tnocomp " != " +" ]
57
- then
58
- echo -e $RED " Not found $tnocomp !" $ENDCOLOR
59
- echo " "
60
- exit 0
39
+ echo " Not found:${tnocomp} !"
40
+ exit 1
61
41
fi
62
42
}
63
43
64
44
main ()
65
45
{
66
- while getopts " :cno :rh" opt
46
+ while getopts " :cino :rh" opt
67
47
do
68
48
case $opt in
69
49
c) tcomment=" 1"
70
50
;;
51
+ i) ticonv=" 1"
52
+ ;;
71
53
n) tnoverify=" 1"
72
54
;;
73
55
o) tdest=" $OPTARG "
@@ -87,8 +69,6 @@ if [ -z "$SRCNAME" ]
87
69
then
88
70
usage
89
71
fi
90
- echo " $src "
91
- echo " "
92
72
if [ -z " $tnoverify " ]
93
73
then
94
74
thtml=` file " $SRCNAME " | grep " HTML document" `
@@ -101,15 +81,20 @@ then
101
81
NEWNAME=" $NEWNAME .utf8.html"
102
82
echo " $SRCNAME -> $NEWNAME "
103
83
104
- CODENAME=$( /usr/bin/enca -i " $SRCNAME " )
105
- if [ " +$CODENAME " = " +" -o " +$CODENAME " = " +???" ]
106
- then
107
- CODENAME=" UTF-8"
108
- elif [ " +$CODENAME " != " +UTF-8" ]
84
+ if [ -z " $ticonv " ]
109
85
then
110
- echo " Convert: $CODENAME -> UTF8"
86
+ cat " $SRCNAME " > " $NEWNAME "
87
+ else
88
+ CODENAME=$( enca -i " $SRCNAME " )
89
+ if [ " +$CODENAME " = " +" -o " +$CODENAME " = " +???" ]
90
+ then
91
+ CODENAME=" UTF-8"
92
+ elif [ " +$CODENAME " != " +UTF-8" ]
93
+ then
94
+ echo " Convert: $CODENAME -> UTF8"
95
+ fi
96
+ cat " $SRCNAME " | iconv -c -f ${CODENAME} -t UTF8 > " $NEWNAME "
111
97
fi
112
- cat " $SRCNAME " | iconv -c -f ${CODENAME} -t UTF8 > " $NEWNAME "
113
98
114
99
echo -e -n " [4]: 0.."
115
100
@@ -154,7 +139,7 @@ echo -e -n "2.."
154
139
155
140
echo -e -n " 3.."
156
141
157
- if [ -z " $tcomment " ]
142
+ if [ ! -z " $tcomment " ]
158
143
then
159
144
sed -i -e '
160
145
/^<\!--/,/^-->/d
@@ -163,11 +148,14 @@ echo -e -n "3.."
163
148
164
149
echo -e -n " 4.."
165
150
166
- sed -i -e '
167
- s/content="text\/html; charset=.*">/content="text\/html; charset=utf-8">/ig
168
- s/[ \t]*$//
169
- /^$/d
170
- ' " $NEWNAME "
151
+ if [ ! -z " $ticonv " ]
152
+ then
153
+ sed -i -e '
154
+ s/content="text\/html; charset=.*">/content="text\/html; charset=utf-8">/ig
155
+ s/[ \t]*$//
156
+ /^$/d
157
+ ' " $NEWNAME "
158
+ fi
171
159
172
160
flgpre=` grep -i " <pre" " $NEWNAME " `
173
161
if [ " +$flgpre " = " +" ]
0 commit comments