The UNIX and Linux Forums  
Hallo en welkom van de Verenigde Staten aan de UNIX en Linux Forum! Bedankt voor uw bezoek en Deelnemen aan onze wereldwijde gemeenschap.

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
wat hulp nodig .. Vergelijking bluesilo Programmeren en Shell Scripting 0 02-23-2008 04:43 PM
Vergelijking van 2 bestanden in UNIX Dana Evans UNIX voor Dummies Questions & Answers 32 11-21-2007 07:05
String Vergelijking tussen twee bestanden met awk rudoraj Programmeren en Shell Scripting 7 07-25-2006 12:04
richt vergelijking helpen Ghazi Programmeren en Shell Scripting 5 12-20-2004 05:54 PM
vergelijking CNF Bestandssystemen, schijven en geheugen 2 05-14-2002 02:52 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 07-25-2006
jerome Sukumar jerome Sukumar is offline
Geregistreerde gebruiker
  
 

Join Date: Jul 2006
Posts: 22
Post Vergelijking van twee bestanden in awk

Hoi,
Ik heb twee bestanden bestand1 en bestand2 gescheiden door een puntkomma,
En ik wil vergelijken kolom 2 en kolom3 van bestand1 te kolom3 en kolom 4 in bestand2.

bestand1
--------
abc; CEF; 155,67; 143_34;
DEF; FGH; 146,55; 123,3;
BRD; hff; 134,67;
yyy; FGH; 134,78; 35_45;

dossier 2
---------
abc; CEF; 155,09;
abc; CEF; 155,67; 143_34;
ASD;;; 123;
DEF; FGH; 145.6; 123.3;
DEF; FGH; 146,55; 123,3;
BRD; hff; 134,67;

Successfile1
------------
abc; CEF; 155,67; 143_34;
DEF; FGH; 146,55; 123,3;

Failfile1
-----------
BRD; hff; 134,67;
yyy; FGH; 134,78; 35_45;

Kan iemand me helpen met een script.
  #2 (permalink)  
Old 07-25-2006
girish.karulkar girish.karulkar is offline
Geregistreerde gebruiker
  
 

Join Date: Jul 2006
Posten: 4
Hi Jerome

Allereerst WHT is see is col2 dossier 1 is tekst & col3 van bestand2 is het aantal,
ja, hoe ur gaan vergelijken?

maar toch kun je deze manier iets

#! / usr / bin / ksh

cut-d ";"-f2 bestand1>> tmpf2.txt
echo
cut-d ";"-f3 bestand2>> tmpf3.txt

diff tmpf2.txt tmpf3.txt

cut-d ";"-f3 bestand1>> tmpf3.txt
echo
cut-d ";"-f4 bestand2>> tmpf4.txt

diff tmpf3.txt tmpf4.txt

rm tmpf [0-9]. txt

  #3 (permalink)  
Old 07-25-2006
jerome Sukumar jerome Sukumar is offline
Geregistreerde gebruiker
  
 

Join Date: Jul 2006
Posts: 22
herformuleren

Sorry Girish,

Ik heb de kolom info ten onrechte,
Haar col3 en col4 van bestand1 te col3 en col4 van bestand2 vergelijking.
  #4 (permalink)  
Old 07-25-2006
grial's Avatar
grial grial is offline Forum Advisor  
El UNIX es como un toro
  
 

Join Date: Jun 2006
Locatie: Madrid (Spanje)
Posts: 531
Misschien is dit wat je wilt, maar ik ben niet zeker als ik het heb begrepen heb
Code:
#!/bin/bash

comp1=($(cat text1.txt | cut -d\; -f 3,4))
comp2=($(cat text2.txt | cut -d\; -f 3,4))

for str in ${comp1[*]}; do
   i=0
   while (( $i < ${#comp2[*]} )); do
      if [[ $str = ${comp2[i]} ]]; then
         cat text1.txt | grep $str
      fi
      (( i += 1 ))
   done
done
Groeten.
  #5 (permalink)  
Old 07-25-2006
jerome Sukumar jerome Sukumar is offline
Geregistreerde gebruiker
  
 

Join Date: Jul 2006
Posts: 22
Probleem.

Hi Grial,
Bedankt voor uw snelle en snelle respons.

Het script werkt voor het vergelijken van twee kols dwz kol 3 en col4 van twee bestanden.

Als ik probeer om te proberen te vergelijken alleen col3 van twee bestanden,
Ik krijg overbodige records.

Bijvoorbeeld:
Mijn File1 bestaat uit 100 records en
bestand2 bestaat uit 238 records.If ik probeer te vergelijken, bestand1 en bestand2 Ik heb 116 records als mijn o / p
in de console.Can u me raden, hoe om dit te verhelpen.
  #6 (permalink)  
Old 07-25-2006
grial's Avatar
grial grial is offline Forum Advisor  
El UNIX es como un toro
  
 

Join Date: Jun 2006
Locatie: Madrid (Spanje)
Posts: 531
Nogmaals, ik weet niet of ik heb begrepen. Vindt u dat u zou kunnen hebben dubbele records op bestand2? Of, wil je alleen het eerste voorval? Als dit het geval is, probeer dan:
Code:
#!/bin/bash

comp1=($(cat text1.txt | cut -d\; -f 3,4))
comp2=($(cat text2.txt | cut -d\; -f 3,4))

for str in ${comp1[*]}; do
   i=0
   while (( $i < ${#comp2[*]} )); do
      if [[ $str = ${comp2[i]} ]]; then
         cat text1.txt | grep $str
         break
      fi
      (( i += 1 ))
   done
done
Closed Thread

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 03:33 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