[bash] lettura e scrittura file di testo [risolto]

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
osser
Linux 0.x
Linux 0.x
Messaggi: 77
Iscritto il: mer 3 ott 2007, 16:31
Slackware: 14.2
Kernel: 4.4.14
Desktop: xfce

[bash] lettura e scrittura file di testo [risolto]

Messaggio da osser »

Vorrei leggere un file di testo con le seguenti righe

Codice: Seleziona tutto

127.0.0.1 counter.bizland.com
127.0.0.1 adultmoneymakers.com
127.0.0.1 kantarmedia.guardian.co.uk
per generare un nuovo file così

Codice: Seleziona tutto

address=/counter.bizland.com/192.168.62.254
address=/adultmoneymakers.com/192.168.62.254
address=/kantarmedia.guardian.co.uk/192.168.62.254
Grazie a chi vorrà aiutarmi
Ultima modifica di osser il dom 21 apr 2013, 14:00, modificato 1 volta in totale.

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: [bash] lettura e scrittura file di testo

Messaggio da ZeroUno »

cat nomefile|sed -r 's,^(.*) (.*)$,address=/\2/\1,'
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
conraid
Staff
Staff
Messaggi: 13630
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: [bash] lettura e scrittura file di testo

Messaggio da conraid »

però non vuole lo stesso IP mi sembra
sed -r 's,^(.*) (.*)$,address=/\2/192.168.62.254,'

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: [bash] lettura e scrittura file di testo

Messaggio da ZeroUno »

beh, io l'ho interpretato come un errore; poi a lui le correzioni.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
Paoletta
Staff
Staff
Messaggi: 3975
Iscritto il: lun 25 apr 2005, 0:00
Slackware: 14.2 - 64 bit
Desktop: fluxbox
Località: Varese

Re: [bash] lettura e scrittura file di testo

Messaggio da Paoletta »

c'è anche la soluzione awk

Codice: Seleziona tutto

awk '{ print "address=/"$2"/"$1 }' filename.txt

Avatar utente
osser
Linux 0.x
Linux 0.x
Messaggi: 77
Iscritto il: mer 3 ott 2007, 16:31
Slackware: 14.2
Kernel: 4.4.14
Desktop: xfce

Re: [bash] lettura e scrittura file di testo

Messaggio da osser »

Grazie per l'interessamento :D
Paoletta ha scritto:

Codice: Seleziona tutto

awk '{ print "address=/"$2"/"$1 }' filename.txt
questa di Paoletta mi piace per la pulizia ma non ho potuto provarla perchè sono su un router openwrt che non ha awk



ho utilizzato invece la soluzione di conraid
conraid ha scritto:sed -r 's,^(.*) (.*)$,address=/\2/192.168.62.254,'
perchè volevo proprio un nuovo ip

Rispondi