The UNIX and Linux Forums  

Go Back   Die UNIX-und Linux-Foren > Top Foren > Shell Programmierung und Scripting
.
Google unix.com



Shell Programmierung und Scripting Post Fragen zu ksh, csh, sh, bash, Perl, PHP, sed, awk und anderen Shell-Skripte und Shell-Scripting-Sprachen hier.

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
Dateien vergleichen prashanth.spl Shell Programmierung und Scripting 0 06-18-2008 05:22 PM
Dateien vergleichen danabo Shell Programmierung und Scripting 3 05-19-2008 01:09 PM
Vergleichen von zwei Dateien charandevu Shell Programmierung und Scripting 7 03-30-2008 04:20 PM
Vergleichen Sie zwei Dateien Penfold Shell Programmierung und Scripting 3 04-29-2005 12:04 AM
Dateien vergleichen und darüber hinaus MizzGail UNIX for Dummies Questions & Answers 2 04-25-2003 02:34 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 Suche diesen Thread Rate Thread Anzeige-Modi
  #1 (permalink)  
Old 10-08-2008
amir07 amir07 is offline
Registrierte Nutzer
  
 

Join Date: Feb 2007
Beiträge: 37
Vergleichen Sie zwei Dateien

Ich muss zwei Dateien:
Grundsätzlich habe ich eine Eingabedatei Filea.
, die es zu vergleichen mit fileB in / etc / LC / mbd directroy

Beide Datei-Format ist:

abc01def: 10.80.11.123

Die Input-Datei-Format ist:

abc01mns: 10.80.11.1
dbc02mns: 10.80.11.2
fbc01mns: 10.80.11.3
rbc01mns: 10.80.11.4
tbc01mps: 10.80.11.5
abt05mns: 10.80.11.6
zbc11mys: 10.80.11.7
ttc01mns: 10.80.11.8
hbc05mns: 10.80.11.9
qbc01mns: 10.80.11.10

So nach dem Vergleich der Skript sagen Sie mir:
Was wurde dupicate und was nicht "Duplizieren".

Danke
  #2 (permalink)  
Old 10-08-2008
joeyg's Avatar
joeyg joeyg is offline Forum Staff  
modérateur
  
 

Join Date: Dezember 2007
Ort: Haus der 17-Weltmeister Boston Celtics
Beiträge: 1311
Wink Kann ein Diff oder comm

Meine Vorliebe ist die comm-Befehl. Aus den manpages --

Code:
OPTIONS
     The following options are supported:

     -1       Suppresses the output column  of  lines  unique  to
              file1.

     -2       Suppresses the output column  of  lines  unique  to
              file2.

     -3       Suppresses the output column of lines duplicated in
              file1 and file2.

Wenn Sie die Proben der beiden Dateien, ein Beispiel Befehl geschaffen werden könnten.
  #3 (permalink)  
Old 10-08-2008
amir07 amir07 is offline
Registrierte Nutzer
  
 

Join Date: Feb 2007
Beiträge: 37
Vielen Dank.,

Dieser Ansatz funktioniert, was meinen Sie:

#! / bin / ksh
while read myline
tun
cnt \u003d 0
while read line
tun
if [[ "$ myline" \u003d "$ line"]]
dann
((cnt + \u003d 1))
Pause
fi
done <Datei1
if [[$ cnt-eq 0]]
dann
echo "$ myline">> output.file
fi
done <datei2
  #4 (permalink)  
Old 10-08-2008
amir07 amir07 is offline
Registrierte Nutzer
  
 

Join Date: Feb 2007
Beiträge: 37
Aber das Problem hier ist, wenn ich vermute, eine zusätzliche Zeile in jeder Datei, sie nicht zu vergleichen. Es werden nur mit genauen Zeilennummern in jeder Datei.
  #5 (permalink)  
Old 10-08-2008
matrixmadhan matrixmadhan is offline Forum Advisor  
Technorati Master
  
 

Join Date: März 2005
Ort: Blattknoten in B + Baum
Posts: 2960
Sie können versuchen, so etwas wie,

[Nicht getestet]


Code:
awk 'BEGIN{ while ( getline < "file_1" ) { arr[$0]++ } }{ if ( $0 in arr ) { printf "%s is duplicate\n", $0 } }' file_2

  #6 (permalink)  
Old 10-08-2008
treesloth treesloth is offline
Registrierte Nutzer
  
 

Join Date: Oct 2008
Lage: Orem, Utah
Beiträge: 73
Die Diff-Befehl scheint ideal für diesen. Insbesondere:


Code:
diff -y file1 file2

Dies wird eine Seite-an-Seite-Vergleich. Die man-Seite enthält weitere Optionen, als ich jemals davon geträumt, mit, sondern y-scheint eine Antwort auf Ihre Bedürfnisse.
  #7 (permalink)  
Old 10-09-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: Feb 2007
Posts: 4346
Probieren Sie dies, wird das Ergebnis in die Dateien dup_file und no_dup_file:


Code:
awk 'NR==FNR{a[$0]=$0;next}
$0 in a {print $0 > "dup_file";next}
{print $0 > "no_dup_file"}
' fileA fileB

Verwenden Sie nawk oder / usr/xpg4/bin/awk auf Solaris.

Grüße
Closed Thread

Lesezeichen

Thread Tools Suche diesen Thread
Suche diesen Thread:

Erweiterte Suche
Anzeige-Modi Rate this thread
Rate this thread:

Forumregeln
Du möglicherweise nicht neue Themen
Du möglicherweise nicht nach Antworten
Du möglicherweise nicht post-Anlagen
Du möglicherweise nicht bearbeiten Sie Ihre Beiträge

BB-Code ist Auf
Smilies sind Auf
[IMG] Code Auf
HTML-Code ist Aus
Trackbacks sind Auf
Pingbacks sind Auf
Refbacks sind Auf




Alle Zeiten sind GMT -4. Es ist jetzt 11:21 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Ltd. Sprachliche Übersetzungen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Die UNIX-und Linux-Foren Content © Copyright 1993-2009. Alle Rechte Reserved.Ad Management von RedTyger

Content Relevant URLs durch vBSEO 3.2.0