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
A voir également:

6 réponses

dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
hello
utiliser des guillemets
sed "$vardebut,$varfind" /monfichier
entre ' les variables ne sont pas résolues
0

 
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?)
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
avec {
sed "${vardebut},${varfind}d" /monfichier
0

 
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$
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
attention, c'est ${var} et non {$var}
0

 
ça tourne !

Merci Beaucoup dubcek
0