Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Problema spazi con sed

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2004
    Messaggi
    155

    Problema spazi con sed

    Sto scrivendo uno script in bash, e ad un certo punto ho necessità di sostituire una data riga in un file di testo con una stringa contenente il contenuto di una variabile d'ambiente. Per fare ciò ho usato questa sintassi:

    codice:
    sed s/BADLINE/EMERGE=\"${EMERGE}\"/ file
    Se la variabile EMERGE non contiene spazi non ci sono problemi, ma se invece ce ne sono il comando genera un errore. Infatti, da quanto ho visto, sed vuole che gli spazi, come le virgolette, siano preceduti da un "\".

    Ho pensato di trasformare il valore della variabile aggiungendo un "\" davanti a ogni spazio. Per farlo ho provato questa sintassi:

    codice:
    sed s/\ /\\\ / file
    e anche questa:

    codice:
    NEWVAR=$(echo ${${EMERGE}//\ /\\\ })
    ma in entrambi i casi non viene prodotta alcuna sostituzione.

    Dove sbaglio???

    Grazie.


  2. #2
    codice:
    sed "s/BADLINE/EMERGE=\"${EMERGE}\"/" file
    Are you alive?
    No, but I was written with LOVE. A new scripting language.
    www.frequenze.it

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.