26 |
} |
} |
27 |
|
|
28 |
# default args: |
# default args: |
29 |
GET_INVENTORY=false |
GET_INVENTORY=0 |
30 |
SEARCH_ONLY_PATH=false |
SEARCH_ONLY_PATH=0 |
31 |
SEARCH_ONLY_CAT=false |
SEARCH_ONLY_CAT=0 |
32 |
SEARCH_EXACT_FILENAME=false |
SEARCH_EXACT_FILENAME=0 |
33 |
|
|
34 |
# no params given, or is only an arg not ar param, exit |
# no params given, or is only an arg not ar param, exit |
35 |
if [[ $# -lt 1 ]] || [[ ${1:0:1} != - ]] |
if [[ $# -lt 1 ]] || [[ ${1:0:1} != - ]] |
45 |
-n) shift; S_PNAME="$1"; if [[ -z ${S_PNAME} ]]; then print_usage; exit 1; fi ;; |
-n) shift; S_PNAME="$1"; if [[ -z ${S_PNAME} ]]; then print_usage; exit 1; fi ;; |
46 |
-v) shift; S_PVER="$1"; if [[ -z ${S_PVER} ]]; then print_usage; exit 1; fi ;; |
-v) shift; S_PVER="$1"; if [[ -z ${S_PVER} ]]; then print_usage; exit 1; fi ;; |
47 |
-b) shift; S_PBUILD="$1"; if [[ -z ${S_PBUILD} ]]; then print_usage; exit 1; fi ;; |
-b) shift; S_PBUILD="$1"; if [[ -z ${S_PBUILD} ]]; then print_usage; exit 1; fi ;; |
48 |
-i) GET_INVENTORY="true" ;; |
-i) GET_INVENTORY="1" ;; |
49 |
-f) SEARCH_ONLY_PATH="true"; shift; SEARCH_PATH="$1"; if [[ -z ${SEARCH_PATH} ]]; then print_usage; exit 1; fi ;; |
-f) SEARCH_ONLY_PATH="1"; shift; SEARCH_PATH="$1"; if [[ -z ${SEARCH_PATH} ]]; then print_usage; exit 1; fi ;; |
50 |
-e) SEARCH_ONLY_PATH="true"; SEARCH_EXACT_FILENAME="true"; shift; SEARCH_PATH="$1"; if [[ -z ${SEARCH_PATH} ]]; then print_usage; exit 1; fi ;; |
-e) SEARCH_ONLY_PATH="1"; SEARCH_EXACT_FILENAME="1"; shift; SEARCH_PATH="$1"; if [[ -z ${SEARCH_PATH} ]]; then print_usage; exit 1; fi ;; |
51 |
-c) SEARCH_ONLY_CAT="true"; shift; SEARCH_CAT="$1"; if [[ -z ${SEARCH_CAT} ]]; then print_usage; exit 1; fi ;; |
-c) SEARCH_ONLY_CAT="1"; shift; SEARCH_CAT="$1"; if [[ -z ${SEARCH_CAT} ]]; then print_usage; exit 1; fi ;; |
52 |
-h) print_usage; exit 0 ;; |
-h) print_usage; exit 0 ;; |
53 |
-*) print_usage; exit 1 ;; |
-*) print_usage; exit 1 ;; |
54 |
esac |
esac |
59 |
source ${MAGERC} |
source ${MAGERC} |
60 |
RETVAL=1 |
RETVAL=1 |
61 |
|
|
62 |
if [[ ${SEARCH_ONLY_PATH} = true ]] |
if [[ ${SEARCH_ONLY_PATH} = 1 ]] |
63 |
then |
then |
64 |
unset S_PACKAGES |
unset S_PACKAGES |
65 |
unset i pkg |
unset i pkg |
66 |
if [[ ${SEARCH_EXACT_FILENAME} = true ]] |
if [[ ${SEARCH_EXACT_FILENAME} = 1 ]] |
67 |
then |
then |
68 |
# fix ++, which gets interpreted as a regex |
# fix ++, which gets interpreted as a regex |
69 |
SEARCH_PATH="${SEARCH_PATH//+/\\+}" |
SEARCH_PATH="${SEARCH_PATH//+/\\+}" |
97 |
exit 0 |
exit 0 |
98 |
fi |
fi |
99 |
|
|
100 |
if [[ ${SEARCH_ONLY_CAT} = true ]] |
if [[ ${SEARCH_ONLY_CAT} = 1 ]] |
101 |
then |
then |
102 |
# no packages of SEARCH_CAT are installed |
# no packages of SEARCH_CAT are installed |
103 |
[[ ! -d ${MROOT}${INSTALLDB}/${SEARCH_CAT} ]] && exit 1 |
[[ ! -d ${MROOT}${INSTALLDB}/${SEARCH_CAT} ]] && exit 1 |
119 |
(( INSTALL_DATABASE_COUNT++ )) |
(( INSTALL_DATABASE_COUNT++ )) |
120 |
done |
done |
121 |
|
|
122 |
if [[ ${GET_INVENTORY} = true ]] |
if [[ ${GET_INVENTORY} = 1 ]] |
123 |
then |
then |
124 |
# build the list first |
# build the list first |
125 |
for ((i=0; i<INSTALL_DATABASE_COUNT; i++)) |
for ((i=0; i<INSTALL_DATABASE_COUNT; i++)) |
134 |
do |
do |
135 |
if [[ ${INSTALL_DATABASE_PNAME[${i}]} == ${S_PNAME} ]] |
if [[ ${INSTALL_DATABASE_PNAME[${i}]} == ${S_PNAME} ]] |
136 |
then |
then |
137 |
INST_PNAME=yes |
INST_PNAME=1 |
138 |
|
|
139 |
if [[ -n ${S_PVER} ]] |
if [[ -n ${S_PVER} ]] |
140 |
then |
then |
141 |
if [[ ${INSTALL_DATABASE_PVER[${i}]} == ${S_PVER} ]] |
if [[ ${INSTALL_DATABASE_PVER[${i}]} == ${S_PVER} ]] |
142 |
then |
then |
143 |
INST_PVER=yes |
INST_PVER=1 |
144 |
fi |
fi |
145 |
|
|
146 |
if [[ -n ${S_PBUILD} ]] |
if [[ -n ${S_PBUILD} ]] |
147 |
then |
then |
148 |
if [[ ${INSTALL_DATABASE_PBUILD[${i}]} == ${S_PBUILD} ]] |
if [[ ${INSTALL_DATABASE_PBUILD[${i}]} == ${S_PBUILD} ]] |
149 |
then |
then |
150 |
INST_PBUILD=yes |
INST_PBUILD=1 |
151 |
fi |
fi |
152 |
fi |
fi |
153 |
fi |
fi |
155 |
# search for pname only |
# search for pname only |
156 |
if [[ -n ${S_PNAME} ]] && [[ -z ${S_PVER} ]] && [[ -z ${S_PBUILD} ]] |
if [[ -n ${S_PNAME} ]] && [[ -z ${S_PVER} ]] && [[ -z ${S_PBUILD} ]] |
157 |
then |
then |
158 |
if [[ ${INST_PNAME} = yes ]] |
if [[ ${INST_PNAME} = 1 ]] |
159 |
then |
then |
160 |
echo "${S_PNAME} is installed [ ${INSTALL_DATABASE_PCAT[${i}]}/${INSTALL_DATABASE_PNAME[${i}]}-${INSTALL_DATABASE_PVER[${i}]}-${INSTALL_DATABASE_PBUILD[${i}]} ]" |
echo "${S_PNAME} is installed [ ${INSTALL_DATABASE_PCAT[${i}]}/${INSTALL_DATABASE_PNAME[${i}]}-${INSTALL_DATABASE_PVER[${i}]}-${INSTALL_DATABASE_PBUILD[${i}]} ]" |
161 |
RETVAL=0 |
RETVAL=0 |
166 |
# search for pname and pver |
# search for pname and pver |
167 |
if [[ -n ${S_PNAME} ]] && [[ -n ${S_PVER} ]] && [[ -z ${S_PBUILD} ]] |
if [[ -n ${S_PNAME} ]] && [[ -n ${S_PVER} ]] && [[ -z ${S_PBUILD} ]] |
168 |
then |
then |
169 |
if [[ ${INST_PNAME} = yes ]] && [[ ${INST_PVER} = yes ]] |
if [[ ${INST_PNAME} = 1 ]] && [[ ${INST_PVER} = 1 ]] |
170 |
then |
then |
171 |
echo "${S_PNAME}-${S_PVER} is installed [ ${INSTALL_DATABASE_PCAT[${i}]}/${INSTALL_DATABASE_PNAME[${i}]}-${INSTALL_DATABASE_PVER[${i}]}-${INSTALL_DATABASE_PBUILD[${i}]} ]" |
echo "${S_PNAME}-${S_PVER} is installed [ ${INSTALL_DATABASE_PCAT[${i}]}/${INSTALL_DATABASE_PNAME[${i}]}-${INSTALL_DATABASE_PVER[${i}]}-${INSTALL_DATABASE_PBUILD[${i}]} ]" |
172 |
RETVAL=0 |
RETVAL=0 |
177 |
# search for pname, pver and pbuild |
# search for pname, pver and pbuild |
178 |
if [[ -n ${S_PNAME} ]] && [[ -n ${S_PVER} ]] && [[ -n ${S_PBUILD} ]] |
if [[ -n ${S_PNAME} ]] && [[ -n ${S_PVER} ]] && [[ -n ${S_PBUILD} ]] |
179 |
then |
then |
180 |
if [[ ${INST_PNAME} = yes ]] && [[ ${INST_PVER} = yes ]] && [[ ${INST_PBUILD} = yes ]] |
if [[ ${INST_PNAME} = 1 ]] && [[ ${INST_PVER} = 1 ]] && [[ ${INST_PBUILD} = 1 ]] |
181 |
then |
then |
182 |
echo "${S_PNAME}-${S_PVER}-${S_PBUILD} is installed [ ${INSTALL_DATABASE_PCAT[${i}]}/${INSTALL_DATABASE_PNAME[${i}]}-${INSTALL_DATABASE_PVER[${i}]}-${INSTALL_DATABASE_PBUILD[${i}]} ]" |
echo "${S_PNAME}-${S_PVER}-${S_PBUILD} is installed [ ${INSTALL_DATABASE_PCAT[${i}]}/${INSTALL_DATABASE_PNAME[${i}]}-${INSTALL_DATABASE_PVER[${i}]}-${INSTALL_DATABASE_PBUILD[${i}]} ]" |
183 |
RETVAL=0 |
RETVAL=0 |