Bonjour, je peux vous proposer dans une approche un peu différente :
sed -n "$LN,$LN {p;q}" fichier
commande :
-n : n'affiche pas les lignes lues sur la sortie
script :
p : fait afficher la ligne en cours
q : fait quitter le script (pour ne pas passer tout le fichier au crible)
Arrivée à la ligne $LN de "fichier", le p fait afficher la ligne et le q
fait sortir.
Un habile contournement, n'est ce pas.
J'ai contourné car mes tentatives d'échappement ont échoué. Qqn s'en est
sorti avec cette piste ?
Cordialement,
Pierre Mazein
Le 04/08/2018 à 15:00, Patrick Dupre a écrit :
> Bonjour,
>
> Je veux extraire une ligne d'un fichier
> Je fais:
> sed '1,1!d' file
>
> Maintenant, je veux que la numero de ligne soit une variable.
> J'ai essaye
> $LN=1
> mais
> sed '${LN},${LN}!d' file
> ne fonctionne pas
> sed: -e expression #1, char 4: extra characters after command
>
> il faudrait un " a la place de '
> mais alors, !d est interprete par bash.
>
> Des idees ?
>
> Merci.
>
> ===========================================================================
> Patrick DUPRÉ | | email: pdupre@???
> Laboratoire de Physico-Chimie de l'Atmosphère | |
> Université du Littoral-Côte d'Opale | |
> Tel. (33)-(0)3 28 23 76 12 | | Fax: 03 28 65 82 44
> 189A, avenue Maurice Schumann | | 59140 Dunkerque, France
> ===========================================================================
>