Je veux assigner une valeur à une variable (ce sera des variables différentes) mais je veux utiliser une fonction pour cela, ce serait quelque chose comme "Passer argument par valeur" comme le fait C#.Comment affecter une valeur de variable dans une fonction? unix korn shell
Voici l'exemple ce que je veux faire:
#/bin/ksh
MyVariable=""
ValidateVariableValue()
{
${1}="Working with this!"
}
ValidateVariableValue "MyVariable"
echo "value is: ${MyVariable}"
Je veux que ma fonction reçoit le nom de la variable et attribuer une valeur à l'intérieur de ma fonction.
C'est possible? il y a un moyen de faire quelque chose de similaire?
Merci.
Je copié le même code que vous, ne fonctionne pas ... 'erreur de syntaxe:' (» unexpected' –
J'ai dû enlever le() sur la Fonctionne mais j'ai des problèmes Cela fonctionne si je fais ceci 'eval $ 1 =" travail "' mais pas si je fais cela 'eval $ 1 =" Travailler avec ceci "' c'est afficher que "avec" n'est pas trouvé –
Je dois j'avoue que je n'ai pas testé avec ksh mais avec bash et zsh cela fonctionne donc si vous échappez à un caractère espace comme ça $ 1 = "Travailler \ avec \ this"? – jehutyy