Magellan Linux

Annotation of /alx-src/branches/alxconf-060/functions/common.sh

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2157 - (hide annotations) (download) (as text)
Wed May 18 11:51:55 2011 UTC (13 years ago) by niro
File MIME type: application/x-sh
File size: 1055 byte(s)
-added updateconfig() function
1 niro 2032 # $Id$
2    
3     addconfig()
4     {
5     local opts
6    
7     if [[ -z ${CONFIG} ]]
8     then
9     echo "You must define \$CONFIG varibale first!"
10     return 1
11     fi
12    
13     if [[ ! -d $(dirname ${CONFIG}) ]]
14     then
15     install -d $(dirname ${CONFIG})
16     fi
17    
18     # check for opts
19     case $1 in
20     -n) shift; opts=" -n" ;;
21     -e) shift; opts=" -e" ;;
22     esac
23    
24     echo ${opts} "$@" >> ${CONFIG}
25     }
26    
27     clearconfig()
28     {
29     if [[ -z ${CONFIG} ]]
30     then
31     echo "You must define \$CONFIG varibale first!"
32     return 1
33     fi
34    
35     if [[ ! -d $(dirname ${CONFIG}) ]]
36     then
37     install -d $(dirname ${CONFIG})
38     fi
39     : > ${CONFIG}
40     }
41 niro 2142
42 niro 2157
43     updateconfig()
44     {
45     local variables="$@"
46     local value
47     local i
48    
49     if [[ -z ${CONFIG} ]]
50     then
51     echo "You must define \$CONFIG varibale first!"
52     return 1
53     fi
54    
55     for i in ${variables}
56     do
57     value="$(eval echo \${NEW_${i}})"
58     if [[ ! -z $(grep "^${i}=" ${CONFIG}) ]]
59     then
60     echo "fixing ${i} -> ${value}"
61     sed -i "s|^\(${i}=\).*|\1\"${value}\"|" ${CONFIG}
62     else
63     echo "adding ${i}=${value}"
64     echo "${i}=\"${value}\"" >> ${CONFIG}
65     fi
66     done
67     }
68    
69 niro 2142 rc_mecho()
70     {
71     rc_echo -e "${COLMAGENTA}$@${COLDEFAULT}"
72     }