web-dev-qa-db-fra.com

La fonction de création de boucle de dossier ne fonctionne pas

J'ai créé une fonction dans un fichier . Sh qui crée des répertoires dans une boucle avec 3 paramètres int: start, end et nom du dossier name

Mais j'obtiens l'erreur suivante:

Syntax error: "(" unexpected

Voici le code de fonction:

#!/bin/bash
function createDirs () {
  start =  "$1";
  end =  "$2";
  name =  "$3";
  for i in {start..end}; do
    mkdir name"$i"
  done
}

createDirs "@"

Qu'est-ce que je fais mal?

Merci pour votre temps, appréciez votre aimable aide.

2
kidwon

Utilisez simplement

mkdir name{1..2}

au lieu de votre script/fonction.

La commande ci-dessus créera deux dossiers

name1
name2

Alternativement - une version corrigée de votre script:

#!/bin/bash
function createDirs () {
  start="$1";
  end="$2";
  name="$3";
  for ((i=start; i<end; i++)); do
    mkdir "$name$i"
  done
}

createDirs "$@"
2
A.B.