-
Notifications
You must be signed in to change notification settings - Fork 19
/
util.sh
99 lines (83 loc) · 1.98 KB
/
util.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
#!/bin/bash
#/**
# * \details © 2011 Open Ximdex Evolution SL [http://www.ximdex.org]
# *
# * Ximdex a Semantic Content Management System (CMS)
# *
# * This program is free software: you can redistribute it and/or modify
# * it under the terms of the GNU Affero General Public License as published
# * by the Free Software Foundation, either version 3 of the License, or
# * (at your option) any later version.
# *
# * This program is distributed in the hope that it will be useful,
# * but WITHOUT ANY WARRANTY; without even the implied warranty of
# * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# * GNU Affero General Public License for more details.
# *
# * See the Affero GNU General Public License for more details.
# * You should have received a copy of the Affero GNU General Public License
# * version 3 along with Ximdex (see LICENSE file).
# *
# * If not, visit http://gnu.org/licenses/agpl-3.0.html.
# *
# * @author Ximdex DevTeam <dev@ximdex.com>
# * @version $Revision$
# */
if [ "$LIB_UTIL" = "1" ];
then
exit 0;
fi
LIB_UTIL=1
GZIP=$(which gzip)
MKDIR=$(which mkdir)
FIND=$(which find)
function util.upper()
{
string=$1
echo $string | tr '[a-z]' '[A-Z]'
}
function util.lower()
{
string=$1
echo $string | tr '[A-Z]' '[a-z]'
}
function util.filename()
{
file=$1
echo ${file%.*}
}
function util.fileext()
{
file=$1
echo ${file/*./}
}
function util.gzip()
{
file=$1
$($GZIP -f $file)
}
#execute script as root
function util.withRoot
{
if [ $SCRIPT_USER != 'root' ]
then
$(sudo -v $SCRIPT $SCRIPT_VARS 2>/dev/null)
if [ 0 = $? ]
then
exec sudo -p "Setting perms needs root user.Root password:" $SCRIPT $SCRIPT_VARS # Call this prog as root
else
echo "Setting perms needs root user"
exec su -c "$SCRIPT $SCRIPT_VARS"
fi
exit ${?}
else
io.println "Using root user..."
fi
#¿in sudo?
if [ -n "$SUDO_USER" ]
then
SCRIPT_USER=${SUDO_USER:-$USERNAME}
else
SCRIPT_USER=${USERNAME:-$SUDO_USER}
fi
}