Consenso all'uso dei cookies

SITO1 -- SITO2 -- Forum2 -- CercaGlobale -- Informativa su Cookie e Privacy

Questo Forum1 è in sola lettura -- Usa il Forum2


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5
[Risolto] - inserire una riga nella posizione voluta in un file
#1
vorrei inserire una certa stringa non vuota nella riga $numriga in un file di testo, lo script potrebbe essere questo, chi mi aiuta ad inserire $nulla in file.txt ?
Codice:
#!/bin/bash
numriga=0
nulla="-----------"
while read riga; do
numriga=$(($numriga+1))
  if [ "$numriga" == 5 ]; then
      echo riga da aggiungere $numriga
# istruzione per inserire $nulla
  fi
  echo $riga $numriga
done < file.txt # file da leggere
Un titolo ben azzeccato attira l'attenzione degli esperti in quel campo, fa risparmiare tempo a voi, aumenta la probabilità di successo.
Cita messaggio
#2
Dovresti cercare di commentarlo un po' perché non lo capisco.

$riga probabilmente dovrebbe essere $nulla.
Ma perché $numriga indica un numero di riga?
Forse lo potrebbe intendere awk ma bisogna che qualcuno lo invochi (awk).
Oppure sed.

In pratica, potrebbe bastare qualcosa tipo
$ awk numerodiriga file.txt /^$nulla$/
però la sintassi non la so
[Immagine: http://pclinuxos.com/forum/avatars/Pengu...guitux.png] Parole !
Mai che se ne trovino due uguali !
Cita messaggio
#3
numriga è un semplice contatore che incremento ad ogni riga che leggo, comunque il problema non è quello, ma quello di inserire una stringa nella posizione voluta, è questo che non so fare.
Un titolo ben azzeccato attira l'attenzione degli esperti in quel campo, fa risparmiare tempo a voi, aumenta la probabilità di successo.
Cita messaggio
#4
semplifichiamo il problema, con questo script
Codice:
#!/bin/bash
numriga=6
nulla="-----------"
sed -i '6i ----------' file.txt
riesco ad inserire ----------- nella riga 6 del file, come posso fare per usare nel comando sed le variabili numriga e nulla ?
Un titolo ben azzeccato attira l'attenzione degli esperti in quel campo, fa risparmiare tempo a voi, aumenta la probabilità di successo.
Cita messaggio
#5
Naturalmente
$ sed -i '$numriga i $nulla' file.txt
però è vero che dà errore
[Immagine: http://pclinuxos.com/forum/avatars/Pengu...guitux.png] Parole !
Mai che se ne trovino due uguali !
Cita messaggio
#6
la soluzione è banale e dimostra la mia ignoranza, basta mettere gli apici doppi
Codice:
sed -i "$numriga i $nulla" file.txt
Un titolo ben azzeccato attira l'attenzione degli esperti in quel campo, fa risparmiare tempo a voi, aumenta la probabilità di successo.
Cita messaggio
#7
Blush Blush Blush
[Immagine: http://pclinuxos.com/forum/avatars/Pengu...guitux.png] Parole !
Mai che se ne trovino due uguali !
Cita messaggio


Vai al forum:


Utenti che stanno guardando questa discussione: 1 Ospite(i)