The UNIX and Linux Forums  

Go Back   De Unix-en Linux Forum > Top Forums > Programmeren en Shell Scripting
.
google unix.com



Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier.

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
Hoe verander gebied seperator onthetopo Programmeren en Shell Scripting 2 05-11-2007 01:11 PM
Met behulp van | als seperator in join firvin UNIX voor Dummies Questions & Answers 5 03-28-2006 12:23
Komma seperator premar Programmeren en Shell Scripting 6 02-17-2006 04:16
Hoe kan ik gebruik maken van een Word voor seperator qrshat SUN Solaris 3 02-10-2006 07:08
Awk Veld SEPERATOR Help insania Programmeren en Shell Scripting 3 11-11-2005 04:29

 
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 05-26-2009
Pinnacle pinnacle is offline
Geregistreerde gebruiker
  
 

Join Date: april 2009
Posts: 182
SUBSEP seperator probleem met awk

De volgende code verwijdert nieuwe lijn met dubbele aanhalingstekens
Ik vervang newline karakter met dubbele aanhalingstekens met 123.
Code:
intermediatenewline_remover () {
    typeset Infile=$1
    nawk -F"," '{ record = record $0
 if ( gsub( /"/, "&", record ) % 2 ) 
 {
     record = record "123"
     next
 }
    }
    { 
 print record
 record = ""
    }' Infile
}
Hier ben ik het combineren van het 4e en 5e veld met "123" als seperator
Code:
    nawk -F"|" '{print $2,$3,$4"123"$5}' OFS="|" file
Vervanging van Comma en seperator "123" met de ruimte.
Het probleem hier is indien de gegevens heeft "123", dat zal ook worden vervangen door de ruimte.
Ik wil alleen maar "123" seperator worden vervangen.

Code:
    nawk -F"|" '{gsub(",", " ",$3);gsub("123", " ",$3);print}' OFS="|" file
Ik probeerde met behulp van SUBSEP
Deze code in plaats van waarde voor SUBSEP "\ 034" en de invoeging van "SUBSEP"

Code:
intermediatenewline_remover () {
    typeset Infile=$1
    nawk -F"," '{ record = record $0
 if ( gsub( /"/, "&", record ) % 2 ) 
 {
     record = record "SUBSEP"
     next
 }
    }
    { 
 print record
 record = ""
    }' Infile
}
en hoe om te gaan met deze wijziging in deze code

Code:
    nawk -F"|" '{print $2,$3,$4"123"$5}' OFS="|" file
    nawk -F"|" '{gsub(",", " ",$3);gsub("123", " ",$3);print}' OFS="|" file
 

Bladwijzers

Thread Tools Zoeken in deze Thread
Zoeken in deze Thread:

Uitgebreid zoeken
Display Modes Beoordeel deze draad
Beoordeel deze draad:

Posting Regels
Jij mag niet Post Nieuwe threads
Jij mag niet na antwoorden
Jij mag niet post attachments
Jij mag niet bewerk uw berichten

BB code is Aan
Smilies zijn Aan
[IMG] code Aan
HTML-code is Uit
Trackbacks zijn Aan
Pingbacks zijn Aan
Refbacks zijn Aan




Alle tijden zijn GMT -4. Het is nu 11:33.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Vertalingen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
De Unix-en Linux Forums Copyright © 1993-2009. Alle rechten Reserved.Ad Beheer door RedTyger

Content Relevante URL's door vBSEO 3.2.0