OVH Cloud OVH Cloud

ksh 2 perl

4 réponses
Avatar
qpj
Bonjour,

debut dans ce langage PERL, j'ai des difficulté pour trans former un script
shell ksh en perl.
pouvez-vous m'aider!
merci par avance.

Exemple 1 :
#!/usr/bin/ksh

# verification nombre parametre

if test $# -ne 1

then

echo "$0 <PARM>"

cr=1

return $cr

exit $cr

fi



# verification si le nom du parametre est declare dans /etc/appli.parm

OPTION=$1

PARM=`cat /ets/appli.parm | grep -v '#' | grep $OPTION | tr -s «» | cut -d':
' -f2`

if test -z "$PARM"

then

echo "$OPTION n est pas declare dans /etc/appli.parm"

cr=1

return $cr

exti $cr

fi



# verification si appli est demarre et est accessible

/usr/local/bin/verif_$PARM.ksh $PARM

cr=$?

if test $cr -eq 1

then

echo "l appli appli_$PARM n est pas demarre"

return $cr

exit $cr

else

if test "$cr" -eq 2

then

echo "l appli appli_$PARM n est pas accessible »

return $cr

exit $cr

fi

fi



# traitement

/usr/local/bin/appli_$PARM.ksh $PARM



Exemple 2 :

# fonction usage

_usage_()

{

echo « /usr/local/bin/appli_$PARM.ksh $PARM »

}



# verification nombre parametre

if test $# -ne 1

then

_usage_

cr=1

return $cr

exit $cr

fi



# declaration options

while getopts b:t:p:s: _options_ $*

do

case $_options_ in

d) _dflag_='1' _dval_ = "$OPTARG";;

t) _tflag_='1' _tval_ = "$OPTARG";;

p) _pflag_='1' _pval_ = "$OPTARG";;

s) _sflag_='1' _sval_ = "$OPTARG";;

*) cr='1'

return $cr

_usage_

exit $cr

esac

done

.......

suite ........

...............



qpj

4 réponses

Avatar
Denis -esp2008-
Bonjour,

debut dans ce langage PERL, j'ai des difficulté pour trans former un script
shell ksh en perl.
pouvez-vous m'aider!


Ce serait avec plaisir, mais je n'ai pas trouvé la question dans le
message!


Au passage, et même si c'est hors sujet ici :
cat /ets/appli.parm | grep -v '#' | grep $OPTION

doit pouvoir a priori se remplacer par un grep seul :)

--
Denis

Avatar
DominiX
"qpj" a écrit dans le message de
news:40e01078$0$30728$


pas bien le multi post, pas bien !

-- dominix
Avatar
qpj
la question est : est-il possible de transformer les 2 exemples de scripts
ksh en perl? et comment?
merci
"qpj" a écrit dans le message de news:
40e01078$0$30728$
Bonjour,

debut dans ce langage PERL, j'ai des difficulté pour trans former un
script

shell ksh en perl.
pouvez-vous m'aider!
merci par avance.

Exemple 1 :
#!/usr/bin/ksh

# verification nombre parametre

if test $# -ne 1

then

echo "$0 <PARM>"

cr=1

return $cr

exit $cr

fi



# verification si le nom du parametre est declare dans /etc/appli.parm

OPTION=$1

PARM=`cat /ets/appli.parm | grep -v '#' | grep $OPTION | tr -s «» |
cut -d':

' -f2`

if test -z "$PARM"

then

echo "$OPTION n est pas declare dans /etc/appli.parm"

cr=1

return $cr

exti $cr

fi



# verification si appli est demarre et est accessible

/usr/local/bin/verif_$PARM.ksh $PARM

cr=$?

if test $cr -eq 1

then

echo "l appli appli_$PARM n est pas demarre"

return $cr

exit $cr

else

if test "$cr" -eq 2

then

echo "l appli appli_$PARM n est pas accessible »

return $cr

exit $cr

fi

fi



# traitement

/usr/local/bin/appli_$PARM.ksh $PARM



Exemple 2 :

# fonction usage

_usage_()

{

echo « /usr/local/bin/appli_$PARM.ksh $PARM »

}



# verification nombre parametre

if test $# -ne 1

then

_usage_

cr=1

return $cr

exit $cr

fi



# declaration options

while getopts b:t:p:s: _options_ $*

do

case $_options_ in

d) _dflag_='1' _dval_ = "$OPTARG";;

t) _tflag_='1' _tval_ = "$OPTARG";;

p) _pflag_='1' _pval_ = "$OPTARG";;

s) _sflag_='1' _sval_ = "$OPTARG";;

*) cr='1'

return $cr

_usage_

exit $cr

esac

done

.......

suite ........

...............



qpj




Avatar
Antoine Dinimant
pas bien le multi post, pas bien !

-- dominix


pour expliciter un peu la réponse :

quand on écrit sur plusieurs forums, la netiquette veut qu'on les mette
tous dans le même message, en plaçant un suivi (follow-up) sur l'un
d'entre eux.