-1
J'ai déjà vu cette question auparavant, mais je n'arrive pas à la comprendre.Utilisation de la valeur de variable comme nom de variable dans bash
J'ai cette variable que je reçois de l'entrée utilisateur read column_number
puis je me joins avec le préfixe « col » pour former le nom de ma variable
selected_column="col"$column_number
Mais lorsque je tente de évaluer pour obtenir le résultat, je continue à obtenir la (standard_in) 1: erreur de syntaxe
sum=$(round $sum+"echo ${!selected_column}", 2)
S'il vous plaît pouvez-vous donner une explication de '$' Est-ce la fonction d'extension de l'histoire que nous utilisons ici? – sjsam
@sjsam 'man bash' puis'/indirection' – gboffi
@sjsam: De 'man bash':" * Si le premier caractère du paramètre est un point d'exclamation (!), Un niveau d'indirection de variable est introduit. de la variable formée à partir du reste du paramètre comme nom de la variable, cette variable est ensuite étendue et cette valeur est utilisée dans le reste de la substitution, plutôt que la valeur du paramètre lui-même (extension ). * " – Cyrus