Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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
GELÖST

Inhalt einer Datei mit Text vergleichen (Batchfile)

Frage Entwicklung Batch & Shell

Mitglied: Lemonjuice

Lemonjuice (Level 1) - Jetzt verbinden

01.12.2009, aktualisiert 13:36 Uhr, 5323 Aufrufe, 20 Kommentare

ich bin informatikerlehrling und versuche ein batch zu schreiben

Also ich habe folgendes problem:

Ich muss ein Batch schreiben der 1. in der Registry nach einer Software sucht die Installiert ist oder nicht.

Wenn es nicht installiert ist dann schreibt es auf unserem Fileserver an einem bestimmten ort damit wir wissen das dieser Computer diese Software nicht besitzt.

Wenn es die Software installiert hat soll er ein Update durchführen und diese Installieren.

"Bis hier hin habe ich es geschafft aber der rest weiss ich nicht wie weiter machen....."

Im letzten Schritt muss es Überprüfen und vergleichen ob die Version 2.5.6 in dem ReleaseNote( ist ein HTML file) auch 2.5.6 steht, wenn dies erfüllt ist

schreibt er ein textfile mit dem hostnamen und den user.

Ich weiss nicht wie ich das im batch schreiben soll, damit er "2.5.6" mit dem Inhalt des ReleaseNote vom Programm vergleicht und sucht ob in diesem file irgendwo 2.5.6 steht

Könnt Ihr mir helfen?


Das habe ich bis jetzt schon gemacht:

01.
@echo on 
02.
 
03.
 
04.
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Baan\ERPLN\ProcessAffinity|find /I "BW">nul  
05.
 
06.
if not errorlevel 0 ( 
07.
 
08.
set %hostname% >\\zhersrvfis02\cherdata$\Alle\ufer\kein_worktop\%computername%.txt 
09.
 
10.
rem " Sie haben kein Worktop" 
11.
 
12.
13.
 
14.
pause 
15.
 
16.
 
17.
if errorlevel 0 ("\\zhersrvfis02\cherdata$\Info\LN\Infor_Worktop\Infor Worktop.msi" 
18.
 
19.
set %hostname% >\\zhersrvfis02\cherdata$\Alle\ufer\update_worktop\%computername%.txt  
20.
 
21.
 
22.
23.
pause

[Edit Biber] Codeformatierung nachgetragen. [/Edit]
Mitglied: 60730
01.12.2009 um 13:43 Uhr
Auch dir eine nette Begrüßung....

Les dir mal die Hilfe zu Reg query durch.

btw.
Errorlevel kann man nur einmal abfragen.
Eine Errorlevelabfrage nach einer Errorlevel Abfrage bringt den Errorlevel der vorherigen Abfrage und nicht das, was man denkt abgefragt zu haben.
Bitte warten ..
Mitglied: Lemonjuice
01.12.2009 um 13:48 Uhr
hmm.. also was wäre dafür eine alternative? ich bin ziemlich am anfang was den batch angeht...

timobeil kannst du mir vieleicht sagen wie ich nach einem wort oder zahl in einem file suchen kann?
Bitte warten ..
Mitglied: Tommy70
01.12.2009 um 13:54 Uhr
Hallo

Oder du verwendest findstr zum Prüfen ob 2.5.6 im File steht.
Bitte warten ..
Mitglied: Lemonjuice
01.12.2009 um 13:56 Uhr
wie würden den der code heissen?

findstr "2.5.6" releanotes.htm oder wie genau?
Bitte warten ..
Mitglied: 60730
01.12.2009 um 13:57 Uhr
Zitat von Lemonjuice:
hmm.. also was wäre dafür eine alternative?
Moin, Mittach oder auch kurz Hallo?
ich bin ziemlich am anfang was den batch angeht...

timobeil kannst du mir vieleicht sagen wie ich nach einem wort oder zahl in einem file suchen kann?
Ja kann ich

@ Tommy - da unser Herr Lehrling mal so und mal so schreibt und die Registry keine Datei ist, die man mit findstr durchsuchen kann...
Bzw: wenn ich meinen Azubi dabei erwischen würde - wenn er eine simple Lernaufgabe - die ich Ihm zum lernen gegeben habe - grußlos in einem Forum postet, damit er nichts selber denken braucht...
Bitte warten ..
Mitglied: Lemonjuice
01.12.2009 um 14:04 Uhr
Hallo, Mahlzeit, Mittag o.ä.

Es ist meine Arbeit so ein Batch zu schreiben weil ich Lehrling bin (Azubi) lernender Informatiker....


Timobeil wie kann ich das im code so schreiben das nach "2.5.6" im Releasenotes.html danach gesucht wird?
Falls er "2.5.6" im file gefunden hat dann soll er diesen Befehl ausführen. Aber bei der Umsetzung happert es ein bisschen, kannst du mir zeigen oder ein mustercode schreiben?

set %hostname% >\\zhersrvfis02\cherdata$\Alle\ufer\update_worktop\%computername%.txt

ich muss eben überprüfen ob das update sauber installiert worden ist oder nicht. In der Registry habe ich schon nachgeschaut und dort hat sich eigentlich nichts grosses geändert das ich nach dem überprüfen könnte.

Ich danke im Voraus
Bitte warten ..
Mitglied: Tommy70
01.12.2009 um 14:17 Uhr
@ Tommy - da unser Herr Lehrling mal so und mal so schreibt und die
Registry keine Datei ist, die man mit findstr durchsuchen kann...
Bzw: wenn ich meinen Azubi dabei erwischen würde - wenn er eine
simple Lernaufgabe - die ich Ihm zum lernen gegeben habe -
grußlos in einem Forum postet, damit er nichts selber denken
braucht...

@Timo

Da er oben ja schreibt, dass er in der ReleaseNote( ist ein HTML file) danach suchen will kann er schon mit findstr arbeiten.
Was den Rest angeht gebe ich dir Recht ;)
Bitte warten ..
Mitglied: Tommy70
01.12.2009 um 14:20 Uhr
@Lemonjuice

Versuchs mal mit findstr /C:"2.5.6" PFAD\Releasenotes.html
Bitte warten ..
Mitglied: Lemonjuice
01.12.2009 um 14:25 Uhr
Zitat von Tommy70:
> @ Tommy - da unser Herr Lehrling mal so und mal so schreibt und
die
> Registry keine Datei ist, die man mit findstr durchsuchen
kann...
> Bzw: wenn ich meinen Azubi dabei erwischen würde - wenn er
eine
> simple Lernaufgabe - die ich Ihm zum lernen gegeben habe -
> grußlos in einem Forum postet, damit er nichts selber
denken
> braucht...

@Timo

Da er oben ja schreibt, dass er in der ReleaseNote( ist ein HTML
file) danach suchen will kann er schon mit findstr arbeiten.
Was den Rest angeht gebe ich dir Recht ;)

Klar jetzt kommt wieder die Typische Mobbing tour für Lernende... Ich habe hier nur um ein paar Tipps gefragt...
Es ist nicht so das ich zu faul wäre ein code zu schreiben jedoch wenn ich erst gerade angefangen habe kann ich ja auch nicht alles wissen oder?
Bitte warten ..
Mitglied: Lemonjuice
01.12.2009 um 14:30 Uhr
also ich habe jetzt den code angepasst jedoch sagt er mir das er das nicht öffnen kann.

mein code :

@echo on


findstr/C:"2.5.6" C:\Program_Files\Infor\Worktop\releaseNotes.htm

pause

habe ich was falsch gemacht?
Bitte warten ..
Mitglied: Tommy70
01.12.2009 um 14:34 Uhr
Schau dir nochmal genau an was ich und was du geschrieben hast.
Eventuell das Leerzeichen nach findstr.
Bitte warten ..
Mitglied: fritzo
01.12.2009 um 14:41 Uhr
Lemonjuice, versuch es so:

findstr "2.5.6" C:\Program_Files\Infor\Worktop\releaseNotes.htm && (
@echo %COMPUTERNAME% > \\zhersrvfis02\cherdata$\Alle\ufer\update_worktop\%computername%.txt
@echo %USERNAME% > \\zhersrvfis02\cherdata$\Alle\ufer\update_worktop\%computername%.txt
) || (@echo nicht gefunden)

@Timo
Trink Kaffee.

Grüße,
fritzo
Bitte warten ..
Mitglied: Lemonjuice
01.12.2009 um 14:43 Uhr
hmm.. also auf den abstand habe ich geschaut.. kann es evtl. sein wegem dem abstand zwischen program und files?
kann es sein das er die abstände nicht erkennt?


findstr /C:"2.5.6" c:\Program Files\Infor\Worktop\releaseNotes.htm
Bitte warten ..
Mitglied: Tommy70
01.12.2009 um 14:46 Uhr
Ja, setz den Pfad in Anführungszeichen.
Bitte warten ..
Mitglied: Lemonjuice
01.12.2009 um 14:50 Uhr
also es hat jetzt funktioniert.

Mein code sieht jetzt so aus.

@echo on

findstr "2.5.6" "C:\Program Files\Infor\Worktop\releaseNotes.htm" && (
@echo %COMPUTERNAME% > \\zhersrvfis02\cherdata$\Alle\ufer\update_worktop\%computername%.txt
@echo %USERNAME% > \\zhersrvfis02\cherdata$\Alle\ufer\update_worktop\%computername%.txt
) || (@echo nicht gefunden)

pause
Bitte warten ..
Mitglied: Lemonjuice
01.12.2009 um 15:04 Uhr
danke tommy 70 jetzt funktioniert es... bis jetzt...
Bitte warten ..
Mitglied: fritzo
01.12.2009 um 15:13 Uhr
@Lemonjuice
Fein. Dann schreib doch bitte noch ein kurzes "Danke an alle" und setz den Thread hier auf "Gelöst". Ansonsten muß ich nämlich Timo recht geben
Bitte warten ..
Mitglied: Lemonjuice
01.12.2009 um 15:24 Uhr
Klar.

Danke an Alle für eure rasche hilfe und die Zeit die Ihr geopfert hat.
Bitte warten ..
Mitglied: fritzo
01.12.2009 um 15:39 Uhr
Oki. Wenn Du nicht weiterkommst, einfach posten. *winke*
Bitte warten ..
Mitglied: Lemonjuice
01.12.2009 um 15:40 Uhr
ok vielen dank fritzo.

ich habe jetzt mein batch noch weiter "modifiziert" und jetzt klappt alles so wie ich es brauche.. nochmals danke
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...