Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Via VBScript 2 TXT Dateien vergleichen und Unterschied in dritte TXT schreiben

Frage Entwicklung VB for Applications

Mitglied: manuel33

manuel33 (Level 1) - Jetzt verbinden

10.05.2010, aktualisiert 25.05.2010, 6801 Aufrufe, 4 Kommentare

Hallo an alle die von VBS mehr verstehen als ich.

Meine Frage:
ich habe 2 *.TXT Dateien

1 TXT stehen verschiedene Benutzernamen untereinander z.b.:

Klaus
lars
robert
claudia


2 TXT stehen aus AD ausgelesenen TXT Benutzer untereinander z.b.:

Klaus
robert
Lars

In TXT Nr. 3 oder auch in eine Msg Box sollen nur die Namen, die in der 2 TXT Datei fehlen hineingeschrieben werden.

Mein Ansatz teilweise im Netz gefunden und angepasst, leider werden damit nur gleiche Namen in ein TXT File geschrieben.
Auch durch Anpassungen und Veränderungen bekomme ich kein entsprechendes Ergebnis.
Ich hoffe Ihr könnt mir helfen, ist wahrscheinlich nur eine Kleinigkeit.
01.
Dim WshShell, fso 
02.
Dim File1, File2, Filegesamt 
03.
Dim Datei1, Datei2, Dateigesamt 
04.
Dim Zeile1 
05.
 
06.
Set WshShell = CreateObject("WScript.Shell")  
07.
set fso = CreateObject("Scripting.FileSystemObject") 
08.
 
09.
Datei1=("datei1.txt") 
10.
Datei2=("datei2.txt") 
11.
Dateigesamt=("dateigesamt.txt") 
12.
 
13.
set File1 = fso.OpenTextFile(Datei1,1, true)  
14.
set Filegesamt = fso.OpenTextFile(Dateigesamt,2, true) 
15.
 
16.
Do While Not LCase(File1.AtEndOfStream) 
17.
	Zeile1 = LCase(Trim(File1.Readline)) 
18.
	Set File2 = fso.OpenTextFile(Datei2,1, true) 
19.
 
20.
Do While not LCase(File2.AtEndOfStream) 
21.
	Zeile2 = LCase(Trim(File2.Readline)) 
22.
	if Zeile1 = Zeile2 then Filegesamt.writeline Zeile1 
23.
Loop 
24.
File2.Close 
25.
Loop 
26.
File1.Close 
27.
Filegesamt.Close 
28.
WSHShell.run "dateigesamt.txt"
[Edit Biber] Codetags ergänzt. [/Edit]
Mitglied: TsukiSan
10.05.2010 um 05:03 Uhr
Hallo manuel33,

benutze bitte die Formatierungshilfen, um Codes besser darzustellen hier im Forum.

Um auf deine Frage zu antworten.
Ich hatte mal ein ähnliches Script, dass etwas anders aussieht, als deines.
Dies soltle aber prinzipiell deine Anforderungen erfüllen.
01.
Dim FSO , MyTXT1, MyTXT2 , MyTXT3 
02.
Dim MeineDatei1, MeineDatei2 ,MeineDatei3 
03.
Dim Datei1 , Datei2 , Datei3 
04.
Dim Neuanlegen 
05.
 
06.
Datei1 = "D:\Text1.txt" 
07.
Datei2 = "D:\Text2.txt" 
08.
Datei3 = "D:\Text3.txt" 
09.
 
10.
Set FSO = createobject("Scripting.FileSystemObject") 
11.
 
12.
Set MeineDatei1 = FSO.OpenTextFile(Datei1, 1) 
13.
	MyTXT1 = split(MeineDatei1.ReadAll,vbcrlf) 
14.
MeineDatei1.Close 
15.
 
16.
Set MeineDatei2 = FSO.OpenTextFile(Datei2, 1) 
17.
	MyTXT2 = split(MeineDatei2.ReadAll,vbcrlf) 
18.
MeineDatei2.Close 
19.
 
20.
If Ubound(MyTXT1) > ubound(MyTXT2) Then 
21.
	for i = 0 to Ubound(MyTXT1) 
22.
		Neuanlegen = 1 
23.
		for ii = 0 to Ubound(MyTXT2) 
24.
			if MyTXT2(ii) = MyTXT1(i) then  
25.
				Neuanlegen = 0 
26.
			end if 
27.
		next 
28.
		If Neuanlegen = 1 then 
29.
			If MyTXT3 = "" then 
30.
				MyTXT3 = MyTXT1(i) 
31.
			Else 
32.
				MyTXT3 = MyTXT3 & vbcrlf & MyTXT1(i) 
33.
			End If 
34.
		End If 
35.
	next 
36.
 
37.
Else 
38.
	for i = 0 to Ubound(MyTXT2) 
39.
		Neuanlegen = 1 
40.
		for ii = 0 to Ubound(MyTXT1) 
41.
			if MyTXT1(ii) = MyTXT2(i) then  
42.
				Neuanlegen = 0 
43.
			end if 
44.
		next 
45.
		If Neuanlegen = 1 then 
46.
			If MyTXT3 = "" then 
47.
				MyTXT3 = MyTXT2(i) 
48.
			Else 
49.
				MyTXT3 = MyTXT3 & vbcrlf & MyTXT2(i) 
50.
			End If 
51.
		End If 
52.
	next 
53.
End If 
54.
 
55.
If Not MyTxt3 = "" then 
56.
	Set MeineDatei3 = FSO.CreateTextFile(Datei3, true) 
57.
	MeineDatei3.Write (MyTXT3) 
58.
	MeineDatei3.Close 
59.
End If
Viele Grüße
Tsuki
Bitte warten ..
Mitglied: LotPings
10.05.2010 um 07:00 Uhr
Hallo Manuel,

wenn es nicht unbedingt vbscript sein muss,

tut es auch dieser Einzeiler auf der Kommandozeile/Batch:
findstr /I /V /G:User-AD.txt User.txt >User-NEU.txt
Gruß
LotPings
Bitte warten ..
Mitglied: manuel33
10.05.2010 um 19:56 Uhr
Hallo LotPings,

da ich alles andere auch mit VBscript erstellt habe, wollte ich bei diesem Thema nicht wechseln.
Danke trotzdem für den Tipp

vG

manuel33
Bitte warten ..
Mitglied: manuel33
10.05.2010 um 20:01 Uhr
Hallo Tsuki,

danke für deine Hilfe, das ist genau das was ich gesucht habe.

vG

manuel33
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Größe einer Datei per BATCH in eine TXT schreiben (5)

Frage von marvinpl zum Thema Batch & Shell ...

Batch & Shell
Kombinationen - Möglichkeiten in txt schreiben lassen! (8)

Frage von freshman2017 zum Thema Batch & Shell ...

Entwicklung
gelöst Zwei .txt Dateien via PowerShell zusammenfügen (2)

Frage von Alex1809 zum Thema Entwicklung ...

Batch & Shell
Powershell - Dateien vergleichen und ergänzen (11)

Frage von Franz-Josef-II zum Thema Batch & Shell ...

Neue Wissensbeiträge
Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Windows 10
Windows 10 Ordnerfreigabe (21)

Frage von Xaero1982 zum Thema Windows 10 ...

Router & Routing
Allnet - VDSL2 Modem - SFP (mini-GBIC) (20)

Frage von Dobby zum Thema Router & Routing ...

Monitoring
Netzwerk-Monitoring Software (18)

Frage von Ghost108 zum Thema Monitoring ...

Windows 10
Seekrank bei Windows 10 (15)

Frage von zauberer123 zum Thema Windows 10 ...