The UNIX and Linux Forums  
Ciao e benvenuto da parte degli Stati Uniti al UNIX e Linux Forum! Grazie per la visita ed unirsi alla nostra Comunità Globale.

Go Back   UNIX e Linux Forum > Inizio Forum > Shell scripting e di programmazione
.
google unix.com



Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui.

Più di UNIX e Linux Forum Argomenti potreste trovare utili
Filo Thread Starter Forum Risposte Ultimo Post
Elaborazione di un file CSV janemary.a Di programmazione ad alto livello 1 05-11-2007 07:27 AM
Sono uno script di shell per verificare l'esistenza di un file prima di elaborare un altro file heprox Shell scripting e di programmazione 3 11-14-2006 03:26 AM
File di trasformazione su Perl garric Shell scripting e di programmazione 2 09-02-2006 12:25 AM
linea nel file fablef00 Shell scripting e di programmazione 8 01-23-2006 11:41 AM
Elaborazione di un file di testo TheCrunge UNIX for Dummies Domande & Risposte 1 11-09-2005 11:47 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Cerca in questo Thread Rate Thread Modalità di visualizzazione
  #1 (permalink)  
Old 10-04-2007
Manouche manouche is offline
Utente Registrato
  
 

Iscriviti Data: ottobre 2007
Interventi: 13
trasformazione di un file con sed e awk

Ciao,

Ho quello che probabilmente è un compito facile in manipolazione del testo, ma ho solo non può avvolgere il mio cervello intorno ad esso.

Ho un file di testo che sembra qualcosa di simile a quanto segue. Nota che alcuni media hanno iniziali nel primo campo e alcuni non lo fanno.

john.r.smith: john.smith @ yahoo.com
george.w.bush: gwbush@whitehouse.gov
larry.doby: ldoby@hotmail.com
tom.t.hall: tom.t.hall @ nashville.com


Vorrei finire con un file che sembra qualcosa di simile a questo:


john smith <tab> <tab> john.smith @ yahoo.com
george bush <tab> <tab> gwbush@whitehouse.gov
larry <tab> Doby <tab> ldoby@hotmail.com
tom <tab> sala <tab> tom.t.hall @ nashville.com

Quindi, voglio dividere ogni riga in due campi separati da una scheda. Sono stato in grado di fare facilmente con awk e scritto in un file.

awk-F ':' '(print $ 1 "\ t" $ 2)' input> outputfile

Voglio eliminare la metà iniziale nel campo 1, se presente. Sono in grado di farlo con sed, Ma come posso solo processo campo 1 e campo 2 lasciare intatto?

I vostri suggerimenti sono i benvenuti.
  #2 (permalink)  
Old 10-04-2007
reborg's Avatar
reborg reborg is offline Forum Staff  
Administrator
  
 

Iscriviti Data: marzo 2005
Luogo: Irlanda
Messaggi: 4.229
Un modo.
Codice:
sed -e 's%\.[a-z]\.%.%' -e 's%\.%        %' -e 's%:%     %'
nota sono i grandi spazi letterale schede, che di solito si può ottenere digitando ^ v <tab>
  #3 (permalink)  
Old 10-04-2007
devtakh devtakh is offline
Utente Registrato
  
 

Iscriviti Data: ottobre 2007
Località: Bangalore
Interventi: 514
u ci vai

a causa della limitazione delle sed interpretare \ t come una scheda .. e non che desiderano una scheda tupe .. sto utilizzando in combinazione con awk .. sed..

shud questo lavoro per voi ...

sed 's / \ (.* \) \. \ .* \ (.* \) \. \ .* \ (.* \) \: / \ 1 \. \ 3 \: / g' input | nawk-F ':' '(sub (/ \. /, "\ t", $ 1); print $ 1 "\ t", $ 2)'

salute,
Devaraj Takhellambam
  #4 (permalink)  
Old 10-11-2007
molle springs is offline
Utente Registrato
  
 

Iscriviti Data: ottobre 2007
Interventi: 4
si può spiegare come funziona questo comando.

Grazie
S
  #5 (permalink)  
Old 10-11-2007
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
addict
  
 

Iscriviti Data: gennaio 2007
Ubicazione: Варна, България / Milano, Italia
Messaggi: 2.875
Supponendo carattere singolo centro iniziali:

Codice:
awk '{sub(/\..\.*/,"\t",$1)}1' FS=":" OFS="\t" filename
Usa nawk / o usr/xpg4/bin/awk su Solaris.
Closed Thread

Segnalibri

Thread Tools Cerca in questo Thread
Cerca in questo Thread:

Ricerca Avanzata
Modalità di visualizzazione Vota questo thread
Vota questo thread:

Distacco regolamento
Tu non può post nuovo thread
Tu non può inviare una risposta
Tu non può postare allegati
Tu non può modificare i tuoi post

BB codice è Su
Smilies sono Su
[IMG] codice Su
Codice HTML è Chiuso
Trackbacks sono Su
Pingbacks sono Su
Refbacks sono Su




Tutti gli orari sono GMT -4. La data di oggi è 03:52 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traduzioni Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX e Linux Forum Content Copyright © 1993-2009. Tutti i diritti Reserved.Ad di gestione da RedTyger

Contenuti pertinenti URL da vBSEO 3.2.0