[BASH] pb de retour de ligne

pb de retour de ligne [BASH] - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 08-12-2005 à 11:31:44    

Bonjour
 
J'ai un probleme tout bete, mais la je seche:
 
Lorsque je fais un :

Code :
  1. ssh becane "cat /etc/fstab"
  2. # System /etc/fstab file.  Static information about the file systems
  3. # See fstab(4) and sam(1M) for further details on configuring devices.
  4. /dev/vg00/lvol3  /                                        vxfs defaults 0 1 #
  5. /dev/vg00/lvol1  /stand                                    hfs defaults 0 1 #
  6. /dev/vg01/lvol4  /opt                                     vxfs defaults 0 2 #
  7. ...


 
je recupère le fstab sous une forme correcte
 
Par contre, lorque je fais ca dans mon script :

Code :
  1. # fstab de la machine
  2. FSTAB=$(ssh ${MACHINE} "cat /etc/fstab" )
  3. # DEBUG
  4. echo
  5. echo "[DEBUG]"
  6. echo ${FSTAB}
  7. echo "[/DEBUG]"
  8. echo


Code :
  1. [DEBUG]
  2. # System /etc/fstab file. Static information about the file systems # See fstab(4) and sam(1M) for further details on configuring devices. /dev/vg00/lvol3 / vxfs defaults 0 1 # /dev/vg00/lvol1 /stand hfs
  3. ...
  4. [/DEBUG]


 
J'ai tout sur la meme ligne T_T
 
Un remède, docteur ?
 
edit : un probleme IFS ?

Message cité 1 fois
Message édité par 3xc4l18ur le 08-12-2005 à 11:38:43
Reply

Marsh Posté le 08-12-2005 à 11:31:44   

Reply

Marsh Posté le 08-12-2005 à 17:07:00    

3xc4l18ur a écrit :

edit : un probleme IFS ?

Oui. Quand ton shell exécute echo ${FSTAB}, il découpe en mots le contenu de $FSTAB en fonction de l'IFS, et par défaut l'IFS contient le retour à la ligne.
 
La solution la plus simple (à part utiliser zsh :whistle: ) est tout simplement de quoter la variable.

echo "${FSTAB}"

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed