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
SSH problemen ysk UNIX for Advanced & Expert Gebruikers 1 07-19-2007 06:16
Problemen AIX en SAN. fjgonzalez AIX 4 07-18-2007 06:15 PM
Problemen met laatste By_Jam UNIX for Advanced & Expert Gebruikers 3 09-29-2006 04:12
Weinig problemen vivekshankar UNIX voor Dummies Questions & Answers 3 05-21-2005 01:26 PM
"merk" problemen (compliation problemen?) xyyz UNIX for Advanced & Expert Gebruikers 5 11-05-2001 10:47 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 04-28-2008
Schorpioen scorpio is offline
Geregistreerde gebruiker
  
 

Join Date: april 2008
Posts: 41
Problemen met knippen

Hi all,


0680046755000011 3040249 3005930 60180GPRS4Samsung_SGH_Z500


Dit is het formaat van mijn log-bestand en de parameters voor het logboekbestand zijn als

• 10 eerste tekens: MSISDN
• 6 volgende tekens: Uur
• 18 volgende tekens: ID SA Bron
• 18 volgende tekens: ID SA Bestemming


Ik heb 11 whitespaces in tussen mijn eerste en tweede colums.I moeten knippen fitst 10 char komende 6 char en de komende 18 char (inclusief spaties). En ik heb geprobeerd volgenden in mijn code

MSISDN \u003d `echo $ data | cut-C1-10"
UUR \u003d `echo $ data | cut-C11-16"
ID_SA_SOURCE \u003d `echo $ data | cut-C17-35"
ID_SA_DEST \u003d `echo $ data | cut-C36-54"


Maar becos van whitespaces is het niet snijden goed .. kan een stel alternatieven

Apple
  #2 (permalink)  
Old 04-28-2008
namishtiwari namishtiwari is offline Forum Advisor  
Geregistreerde gebruiker
  
 

Join Date: Aug 2007
Locatie: Bangalore
Posts: 377
Citaat:
Oorspronkelijk geplaatst door Schorpioen View Post
Hi all,


0680046755000011 3040249 3005930 60180GPRS4Samsung_SGH_Z500


Dit is het formaat van mijn log-bestand en de parameters voor het logboekbestand zijn als

• 10 eerste tekens: MSISDN
• 6 volgende tekens: Uur
• 18 volgende tekens: ID SA Bron
• 18 volgende tekens: ID SA Bestemming


Ik heb 11 whitespaces in tussen mijn eerste en tweede colums.I moeten knippen fitst 10 char komende 6 char en de komende 18 char (inclusief spaties). En ik heb geprobeerd volgenden in mijn code

MSISDN \u003d `echo $ data | cut-C1-10"
UUR \u003d `echo $ data | cut-C11-16"
ID_SA_SOURCE \u003d `echo $ data | cut-C17-35"
ID_SA_DEST \u003d `echo $ data | cut-C36-54"


Maar becos van whitespaces is het niet snijden goed .. kan een stel alternatieven

Apple
Eerste verlaging van de ruimten tussen het log bestand van gegevens met het commando tr
Code:
HOUR=`echo $data | tr -s " " |cut -c11-16`
een proberen deze.
  #3 (permalink)  
Old 04-28-2008
Schorpioen scorpio is offline
Geregistreerde gebruiker
  
 

Join Date: april 2008
Posts: 41
Hoi
Bedankt voor het antwoord

But i cant trim mijn whitespaces van logbestanden. Ik moet nemen dat ook ..
becos parameters zijn ingesteld, zoals
• 10 eerste tekens: MSISDN
• 6 volgende tekens: Uur
• 18 volgende tekens: ID SA Bron
• 18 volgende tekens: ID SA Bestemming
Deze tekens bevat witruimtes ook
  #4 (permalink)  
Old 04-28-2008
namishtiwari namishtiwari is offline Forum Advisor  
Geregistreerde gebruiker
  
 

Join Date: Aug 2007
Locatie: Bangalore
Posts: 377
Citaat:
Oorspronkelijk geplaatst door Schorpioen View Post
Hoi
Bedankt voor het antwoord

But i cant trim mijn whitespaces van logbestanden. Ik moet nemen dat ook ..
becos parameters zijn ingesteld, zoals
• 10 eerste tekens: MSISDN
• 6 volgende tekens: Uur
• 18 volgende tekens: ID SA Bron
• 18 volgende tekens: ID SA Bestemming
Deze tekens bevat witruimtes ook
Code:
id=`echo 0680046755000011 3040249 3005930 60180GPRS4Samsung_SGH_Z500 | tr -s " " |cut -c17-35`
output is --- 3040249 3005930 60
  #5 (permalink)  
Old 04-28-2008
Schorpioen scorpio is offline
Geregistreerde gebruiker
  
 

Join Date: april 2008
Posts: 41
Hoi,

Eigenlijk het logbestand is als 0608166896000001 in mijn eerste kolom 11 whitespaces en 3001339 in mijn tweede kolom (3001339) en vervolgens 11 whitespaces
3204235 in mijn derde coumn.
...

Maar tijdens het lezen van regel voor regel met behulp van volgende code

terwijl de data te lezen
doen
echo $ data gegevens
ID_SA_SOURCE \u003d `echo $ data | cut-C17-35"
echo ID_SA_SOURCE $ ID_SA_SOURCE
Gedaan <$ TRACKING_LOGDIR / $ listdata


Ik krijg niet de 11 witruimtes in "data" variabele in plaats van Ik krijg alleen een ruimte .. i wanna 11whtespaces eerste en 3001339 waarde in mijn ID_SA_SOURCE variabele ....

Kunt u dit controleren pleasse
  #6 (permalink)  
Old 04-28-2008
tijdperk era is offline Forum Advisor  
Herder van Nutteloze Cats (On Sabbatical)
  
 

Join Datum: maart 2008
Locatie: / er / is / alleen / bin / sh
Berichten: 3652
Je moet goed citeer uw variabelen als je echo hen, de shell anders zal trim witruimte. Ik zou adviseren tegen het gebruik van echo helemaal niet, hoor.

Maar hier is hoe citaat correct. Te zijn een beetje aan de veilige kant, ook ik zap IFS, ik geloof niet dat het strikt noodzakelijk, maar het is een techniek die je moet kennen.

Code:
OLDIFS=$IFS
IFS='
' # just a newline, in single quotes
while read data
do
  MSISDN="`echo "$data" | cut -c1-10`"
  HOUR="`echo "$data" | cut -c11-16`"
  ID_SA_SOURCE="`echo "$data" | cut -c17-35`"
  ID_SA_DEST="`echo "$data" | cut -c36-54`"
done < $TRACKING_LOGDIR/$listdata
IFS=$OLDIFS
Met dat van de weg, hoe zit zoiets?

Code:
awk '{ OFS=":"; print substr($0, 1, 10), substr($0, 11, 16),
    substr($0, 17, 35), substr($0, 17, 35) }' $TRACKING_LOGDIR/$listdata |
while IFS=: read MSISDN HOUR ID_SA_SOURCE ID_SA_DEST; do
  echo "'$HOUR': All your '$ID_SA_SOURCE' are '$ID_SA_DEST' to '$MSISDN'"
done
  #7 (permalink)  
Old 04-28-2008
Schorpioen scorpio is offline
Geregistreerde gebruiker
  
 

Join Date: april 2008
Posts: 41
Hi All,

Ik probeerde de eerste zijn werkgroepen Dank aan alle
Sponsored Links
Closed Thread

Bladwijzers

Labels
awk, awk trim, trim, trim awk

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 03:50.


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