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
verwijderen patroon die is verspreid in meerdere lijnen sabyasm Programmeren en Shell Scripting 2 05-13-2008 06:19
met behulp van tr om meerdere regels van de output in een lijn otes4 Programmeren en Shell Scripting 3 02-18-2008 11:30
samenvoegen van meerdere lijnen van platte bestand hnhegde Programmeren en Shell Scripting 4 12-05-2006 07:13 PM
Gebruik sed te fuseren meerdere lijnen xb88 Programmeren en Shell Scripting 3 08-08-2006 02:54 PM
Het verwijderen van de gebruiker uit meerdere groepen via de opdrachtregel jquizon62 SUN Solaris 1 10-28-2004 01:56 PM

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 Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 10-14-2008
tink tink is offline
Geregistreerde gebruiker
  
 

Join Date: juni 2008
Posten: 4
Het verwijderen van het einde van de lijn te fuseren meerdere lijnen

Ik weet zeker dat dit een gemakkelijke vraag voor u deskundigen daar buiten, maar ik heb gezocht op het forum en werken aan dit voor een paar uur en kan nu niet goed krijgen.

Ik heb een zeer rommelig gegevens bestand dat ik probeer te ruimen - een van de onderwerpen is een aantal records worden opgesplitst in meerdere regels:

999999000 "Naam" "dit is tekst voor een lijn
lijn twee
lijn drie "

En ik heb geprobeerd alle mogelijke versie van sed om er te laten uitzien als dit:
999999000 "Naam" "dit is tekst voor een lijn lijn lijn twee drie"

en ja, ik heb geprobeerd dingen sed 's / $ / /' file1> file2 ... Het probleem is niet elke lijn heeft een probleem, dus ik probeer te bedenken hoe om alleen te verwijderen lijn feeds voor problematische lijnen, niet alle lijnen

het probleem lijnen zullen beginnen met alfa-numerieke tekens niet, dus ik heb geprobeerd om iets te doen met dat maar tevergeefs

bedankt

Laatst bewerkt door tink; op 10.14.2008 12:17..
  #2 (permalink)  
Old 10-14-2008
ShawnMilo ShawnMilo is offline
Geregistreerde gebruiker
  
 

Join Date: Jun 2006
Posts: 252

Code:
cat temp.txt  | perl -pe 's/\n/ /'

  #3 (permalink)  
Old 10-14-2008
joeyg's Avatar
joeyg joeyg is offline Forum Staff  
modérateur
  
 

Join Date: december 2007
Locatie: Home 17-time wereld kampioen Boston Celtics
Berichten: 1311
Wink Is dit geeft u de gewenste resultaat?


Code:
> cat file31
999999000 "Name" "this is text for line one
line two
line three"
888888000 "Yep" "All on one line"
777777111 "Yes" "Another good text"
555555999 "Name" "this is other text for line one
line two
line three"

> cat calc_file31
rm file32
while read line
  do
  if [ `echo "$line" | tr -d " " | grep '"$'` ]
   then
    echo "$line""~" >>file32
   else
    echo "$line" >>file32
  fi
done <file31

cat file32 | tr "\n" " " | tr "~" "\n"

> calc_file31
999999000 "Name" "this is text for line one line two line three"
 888888000 "Yep" "All on one line"
 777777111 "Yes" "Another good text"
 555555999 "Name" "this is other text for line one line two line three"
>

  #4 (permalink)  
Old 10-14-2008
tink tink is offline
Geregistreerde gebruiker
  
 

Join Date: juni 2008
Posten: 4
bloedige prachtige joeyg - thanks!


Dit werkte ook voor mij in het einde:
sed 's /"$/"|/ g' file1> file2

omdat de dubbele aanhalingstekens geldig was voor de laatste kolom ... dus vervangen dubbele aanhalingstekens en lijn eindigt met dubbele aanhalingstekens en pijp ...

Nogmaals bedankt
  #5 (permalink)  
Old 10-14-2008
freelong freelong is offline
Geregistreerde gebruiker
  
 

Join Date: april 2008
Posts: 38

Code:
awk '/^[0-9]/ { print ""; printf $0}
     !/^[0-9]/ {printf $0}
     END {print ""}' filename

Closed Thread

Bladwijzers

Labels
lijn eindes, line terminators, vervangen, sed

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 06:15 PM.


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