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

Dateien vergleichen per BATCH mit dos-FC.EXE

Frage Entwicklung Batch & Shell

Mitglied: perry56

perry56 (Level 1) - Jetzt verbinden

21.06.2010, aktualisiert 16:43 Uhr, 11492 Aufrufe, 2 Kommentare

Guten Tag an Alle,

schön mal wieder hier zu sein. Frage vorweg an den ADMIN: Habt Ihr alte User gelöscht ? Schade wäre es!
Na egal ...

Ich möchte zwei Dateien mit FC.EXE vergleichen. Dazu habe ein BATCH erstellt. Da dieses BATCH sehr
umfangreich ist, habe ich nur einen kleinen Auszug beschrieben

Vorraussetzung ist (ich habe mich persönlich davon überzeugt): die Dateien a.txt und b.txt sind unterschiedlich

fc a.txt b.txt >nul
echo %ERRORLEVEL%
pause

Gebe ich diesen Zweizeiler in dem cmd-Fenster ein, so bekomme ich als ERRORLEVEL "1".
Das wäre richtig.

Lasse ich diese beiden Zeilen in meinem BATCH laufen, so bekomme ich als ERRORLEVEL "0".

Es sei noch folgendes erwähnt (vielleicht liegt es daran), diese drei Zeilen werden
durch einen CALL in meinem BATCH aufgerufen, also so:

starten der CMD-Datei mit schalter

...
if (%1)==(1) call top1
...
goto :eof

:top1
...
ren ...
copy ...
call vergleich
...
goto :eof

:vergleich
fc a.txt b.txt >nul
echo %ERRORLEVEL%
pause
goto :eof


Es ist zwar heute Montag, aber über's Wochenende kann ich nicht so viel vergessen haben. Oder doch ?? )

Frage was ist falsch?
Beim "googlen" ist mir aufgefallen, das hier mal ein BUG war? Der ERRORLEVEL von fc wurde nicht richtig übergeben !
Ist dieser immernoch vorhanden ? Habe ich was überlesen ?

Vielen Dank für Eure Hilfe
Mitglied: bastla
21.06.2010 um 23:01 Uhr
Hallo perry56 und willkommen im Forum!

Abfragen (und darauf wird's ja auch im nicht geposteten Teil Deines Codes hinauslaufen) mit %Errorlevel% vermeide ich grundsätzlich - daher entweder ein
if errorlevel 1 echo verschieden
oder gleich die direkte Variante
fc a.txt b.txt >nul || echo verschieden
(beides mit dem zusaätzlichen Vorteil, auch innerhalb einer "for"-Schleife zu funktionieren).

Abgesehen davon stellt sich noch die Frage, wo in Deinem Script (im aufgerufenen Unterprogramm oder im Hauptprogramm) dann was passieren soll - um einen Errorlevel an das Hauptprogramm zurückzugeben, könntest Du im Unterprogramm "exit /b" verwenden ...

Grüße
bastla
Bitte warten ..
Mitglied: perry56
22.06.2010 um 19:45 Uhr
Hallo bastla,

vielen Dank für Deine Anregungen. Habe ein paar Dinge auch nach Deinen Hinweisen umgestellt.

Woran es letztendlich gelegen hat, kann ich im einzelnen nicht sagen.

Ergebnis ist jedenfalls, nach Umstellung und Neustart des PC ( Neustart -- das scheint es in erster Linie
gewesen zu sein) funkt es einwandfrei. Ja was soll ich sagen, selbst der ERRORLEVEL ist jetzt in Ordnung.

Nein "Scherz beiseite" - ich habe den ERRORLEVEL in einer Variable zwischengespeichert und arbeite mit dieser
im Programm weiter. Es wird so sein, das der ERRORLEVEL von einer anderen Funktion manipuliert wurde.

Nochmals vielen Dank. Ansonsten kann der Fall als gelöst vermerkt werden

Grüße
perry56

PS: nette Begrüßung danke, aber warum ist mein Nickname nicht mehr vorhanden / ich war vor Monaten
schon öffters bei Euch und hatte regen Kontakt mit BIBER (Gruss an Ihn) / wo ist mein Account geblieben ?
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Maximale Größe zu verarbeitender txt-Dateien mit Batch (5)

Frage von Muck1303 zum Thema Batch & Shell ...

Batch & Shell
gelöst älteste dateien via batch löschen (6)

Frage von cali169 zum Thema Batch & Shell ...

Batch & Shell
gelöst Mehrere PDF-Dateien per Batch zusammenfügen (1)

Frage von Grimmli zum Thema Batch & Shell ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Komplett neues Netzwerk, Ubiquiti WLAN, Router, Switch (16)

Frage von Freak-On-Silicon zum Thema LAN, WAN, Wireless ...

CMS
Lokales Wordpress im LAN - wie aufsetzen? (15)

Frage von Static zum Thema CMS ...

Backup
Backup Wochen- Monats- Jahressicherung (13)

Frage von Meterpeter zum Thema Backup ...

RedHat, CentOS, Fedora
Fedora, RedHat, Centos: DNS-Search Domain setzen (13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...