Utilisation sed avec delimiteurs numérique dans variables

Résolu
Bonjour,

Voici mon pb sur un fichier zsh:

vardebut=0
varfin=4

sed '$vardebut,$varfind' /monfichier

évidemment ça ne marche pas

Quelqu'un saurait il comment faire?

Merci

6 réponses

  1. voici mon script exact avec la correction que tu me suggère:

    ------------------------
    #/bin/zsh
    echo "entrer nom site "
    read nomsite
    intervalle=2
    numline=$(grep -n $nomsite".local" /Users/alexandre/Sites/httpd-vhosts.conf | cut -d ":" -f1)
    numlineEnd='expr $numline + $intervalle'
    numlineBeg='expr $numline - $intervalle'
    sed "{$numlineBeg},{$numlineEnd}d" /Users/alexandre/Sites/httpd-vhosts.conf
    echo $numlineBeg
    echo $numlineEnd

    -----------

    et voici l'exécution:

    MacBook-Pro-de-alexandre:Desktop alexandre$ ./essai.sh
    entrer nom site
    site1
    sed: 1: "{13},{17}d": command } expects up to 0 address(es), found 1
    13
    17
    MacBook-Pro-de-alexandre:Desktop alexandre$
    1. Merci, mais,
      le problème c'est que le 'd' après varfin, c'est l'option de suppression de sed qui est de la forme:
      sed '0,4d' /monfichier avec 0 la première ligne de l'intervalle et 4 la dernière.

      comment séparer le d de la variable? (quel symbole?)
      1. Contributeur
        hello
        utiliser des guillemets
        sed "$vardebut,$varfind" /monfichier
        entre ' les variables ne sont pas résolues