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
| ENV=$1
IDENT=${2:-ALL}
if [ "$ENV" == "" ]; then
echo "Manque nom environnement en argument de get_ACCES.sh" >&2
exit 111
fi
awk -v ENV=$ENV -v IDENT=$IDENT '\
/^#/ || /^$/ {next}
$1~/'$ENV'/ {
if ($2 == IDENT || IDENT == "ALL") {
serveur = $5
repert = ""
posit = index ($5, "/")
if (posit > 0) {
serveur = substr ($5, 0, posit-1)
repert = substr ($5, posit)
}
else {
posit = index ($5, "~")
if (posit > 0) {
serveur = substr ($5, 0, posit-1)
repert = substr ($5, posit+1)
}
}
printf ("EXP_USR_%s=\"%s\";EXP_PWD_%s=\"%s\";EXP_SRV_%s=\"%s\";EXP_TXT_%s=\"%s\";",
$2, $3, $2, $4, $2, serveur, $2, $6)
if (repert != "") {
printf ("EXP_DIR_%s=\"%s\";", $2, repert)
}
if ($2 == IDENT) {
printf ("EXP_USR_CURRENT=\"%s\";EXP_PWD_CURRENT=\"%s\";EXP_SRV_CURRENT=\"%s\";EXP_TXT_CURRENT=\"%s\";",
$3, $4, serveur, $6)
if (repert != "") {
printf ("EXP_DIR_CURRENT=\"%s\";", repert)
}
exit
}
}
}' /toto.txt |
Partager