Shell Script: bonne façon de déclarer un tableau vide

Je suis en train de déclarer un tableau vide en Script Shell, mais je suis en train de vivre une erreur.

#!/bin/bash

list=$@

newlist=()

for l in $list; do

        newlist+=($l)

done

echo "new"
echo $newlist

Quand je l'execute, je reçois test.sh: 5: test.sh: Syntax error: "(" unexpected

  • Le Code s'exécute sans erreur
  • Êtes-vous sûr d'exécution de votre script avec bash? On dirait que le script est en cours d'exécution à l'aide de sh, auquel cas les tableaux ne sont pas pris en charge.
  • Aussi, l'attribution $@ à un autre paramètre perd les avantages de $@, à savoir que l'espace blanc à l'intérieur d'un seul argument de ligne de commande est conservée. Fossé list et l'utilisation for l in "$@"; do directement.
InformationsquelleAutor luizfzs | 2013-09-20