Top-Themen

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

Batch: Dateien auf Namen vergleichen/ ohneTool

Frage Entwicklung Batch & Shell

Mitglied: cavalera

cavalera (Level 1) - Jetzt verbinden

30.01.2007, aktualisiert 19:24 Uhr, 4657 Aufrufe, 5 Kommentare

Hallo

habe zu meiner Frage in artverwandten Beiträgen nur Verweise auf Tools gefunden,
ich brauche aber eine batch die ich bei jedem meiner Datenbankanwender auf den Rechner packen kann. Diese soll in dem Netz Ordner "Quelle" nach der Datei "Datenbank_1.0.ade" gucken
und das mit dem Lokalen Ordner "Ziel" abgleichen. Ist dort die Datei Datenbank_1.0.ade vorhanden soll er die starten, wenn nicht und die Datei zum Beispiel "Datenbank_0.9.ade" heißt soll die 1.0 vom Netz dort in das Zielverzeichnis kopiert und dann ausgeführt werden.

Also so das der User immer die aktuellste Version der Datei startet.
Ich weiß das ich das auch über das Änderungsdatum machen könnte, nur würde ich das gerne so lösen. Ich habe von Shell programmieren keine Ahnung, deswegen die Frage ob das so gehen würde??
kann ich die Dateien mit der Konvention überhaupt vergleichen, oder sollte man sie lieber Datenbank_001 nennen, zum Beispiel?


Für Hilfe währe ich sehr dankbar.
Mitglied: anding
30.01.2007 um 11:03 Uhr
Ich versuch mich mal, weiß aber nicht ob ich dich richtig verstanden hab, bzw. ob's so elegant ist...

If exist <Pfad>\Datenbank_1.0.ade (call <Pfad>\<Prog>) ELSE GOTO :NICHTDA
exit
:NICHT DA
xcopy <Quelle> <Ziel>
call <Pfad>\<Prog>

so hätte ich jetzt versucht das ganze zu Lösen... Aber hier gibts normalerweise Spzialisten, also wart lieber noch ein wenig... ;)
Bitte warten ..
Mitglied: cavalera
30.01.2007 um 11:13 Uhr
Danke das ist echt super so. Reicht vollkommen
nur weiß die batch ja nicht welche die aktuellste version ist die da liegt. also 1.0 oder 9.1 darf ich da ja nicht angeben. Also wie mach ich das dass der auch guckt, ob meintewegen die letzten drei zeichen kleiner sind, dann kopieren wenn nicht dann so lassen und starten?
Bitte warten ..
Mitglied: Biber
30.01.2007 um 11:27 Uhr
...indem Du irgendwo auf dem (oder einem) Server an einem definierten Ort eine Datei hinterlegst, die den "richtigen" Datenbank-Versionsnamen hat.

Beispiel: Wenn alle Clients auf den ServerABC zugreifen können/dürfen, legst Du dort in einem Verzeichnis ein Unterverzeichnis "CurrentVersion" oder "AktuelleDB" an.
Und dort existiert dann eine einzige Datei, die "Datenbank_0.902d.ade" heißt, 0 byte groß ist und nur von Dir allein geändert werden kann (alle Clients haben nur Leserechte).

Gruß
Biber
Bitte warten ..
Mitglied: cavalera
30.01.2007 um 11:38 Uhr
Das würde ja mit der ADE Datei selbst gehen die heißt ja dann "soundso_v.001" also wenn die genauso heißt wie die aufm Rechner dann starte wenn nich dann xcopy und starte: super versteh ich, danke ;)
Kann man mir noch ne Hilfe empfehlen, ich weiß ja nicht wie das geht, irgendwie muss ich aber ja die Ordnerinhalte vergleichen ohne nen expliziten Dateiname zu nenen, also datei mit endung ade in Netzwerk = datei mit ADe auf D: = ? JA Dann usw...

hätte das Kenzeptionell jetzt so, bloß die Syntax is ja nicht so, also wie guck ich nach einer Datei derer name in einer variablen steht usw?
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
DateinameLokal = D:\Ordner\*.ade


If exist \\devwaghad43004\Fehlerrueckmeldung-Zp5\Quelle\DateinameLokal
(call D:\Ordner\DateinameLokal)
ELSE GOTO :NICHTDA

exit

:NICHT DA

xcopy \\devwaghad43004\Fehlerrueckmeldung-Zp5\Quelle\*.ade D:\Ordner\*.ade

call D:\Ordner\*.ade
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Bitte warten ..
Mitglied: Biber
30.01.2007 um 19:24 Uhr
Ich versuch noch mal einen Ansatz, cavalera,

spiel es am besten am CMD-Prompt nach.

Wenn Du eine von mehreren Dateien mit z.b. gleicher Dateiendung aus einem Verzeichnis "wählen" willst und das Kriterium soll sein :"die Neueste" oder "die Älteste", geht es am einfachsten mit Hilfe des Dir-Befehls.

[Am CMD-Prompt:]
for /f %i in ('dir /b /o:d D:\Ordner\*.ade') do @echo %i

...das würde Dir die "Neueste" *.ade-Datei aus D:\Ordner zeigen.

Diese in eine Variable speichern ginge so:
for /f %i in ('dir /b /o:d D:\Ordner\*.ade') do @Set AktuelleADE=%i

...und dann kannst Du mit "if exist \\devwaghad43004\Fehlerrueckmeldung-Zp\Quelle\%AktuelleADE%" prüfen, ob eine gleichnamige auf dem Server ist.

Oder, falls der Server den Ton angibt 8was ich für wahrscheinlicher halte):
for /f %i in ('dir /b /o:d \\devwaghad43004\Fehlerrueckmeldung-Zp\Quelle\*.ade') do @Set AufmServerADE=%i
if not exist D:\ordner\%AufmServerAde% [installiere-Serverversion-auf-Client]

Im Batch jeweils zwei %-Zeichen vor den Zählvariablen, also %%i statt %i.

HTH
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch vergleich von zwei dateien
gelöst Frage von realdavegerBatch & Shell6 Kommentare

Hallo, nach Jahrelangem zugucken, habe ich jetzt schlussendlich eine Frage welche ich selbst stelle. Ich versuche 2 zeiten aus ...

Batch & Shell
Batch vergleiche Dateien mit Zeitstempel
gelöst Frage von Streuner1Batch & Shell5 Kommentare

Hallo, ich möchte mit einer batch in einem Ordner Dateien mit einem Zeitstempel suchen, vergleichen, kopieren und löschen. Möglichkeiten: ...

Batch & Shell
Batch Vergleichen von Dateien
gelöst Frage von BlaberBatch & Shell2 Kommentare

Hallo Leute, ich habe ein kleines Problem bei einer Batch-Datei. In dieser versuche ich zwei Text-Dateien miteinander zu vergleichen, ...

Batch & Shell
Kopierte Dateien per Batch vergleichen
Frage von dobym24Batch & Shell7 Kommentare

Hallo zusammen, ich habe folgendes Problem und mittlerweile Tage im Internet verbracht um eine Lösung zu findenLeider erfolglos Ich ...

Neue Wissensbeiträge
Microsoft

Update KB4073578 für AMD CPU (Spectre und Meltdown Lücke)

Information von sabines vor 1 StundeMicrosoft

Wegen Problemen (BOSD, nicht startende PCs) wurde das Update KB4056897 und KB4056894 für AMD CPUs zurückgezogen. Dieses Update KB4073578 ...

Mac OS X

MacOS wo ist die Tilde ?

Tipp von Alchimedes vor 14 StundenMac OS X1 Kommentar

Hallo, ich hab eine MacOS qwertz Keyboard auf US Layout umgestellt da die Sonderzeichen besser erreichbar sind. Leider fehlt ...

Datenschutz

Weitere Informationen zum Sicherheitsproblem BeA

Information von Penny.Cilin vor 21 StundenDatenschutz

Im folgenden ein weiterer Bericht über die Sicherheitsprobleme von Bea. Fataler Konstruktionsfehler im besonderen elektronischen Anwaltspostfach Gruss Penny

Windows 10

Systemdienste behalten nach Win10 inplace-Upgrade nicht die ggf. modifizierte Startart bei

Tipp von DerWoWusste vor 22 StundenWindows 103 Kommentare

Stellt Euch vor, Ihr habt ein Win10 System und modifiziert dort die Startart von Systemdiensten. Zum Beispiel wollt Ihr ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von fyrb38Windows 1018 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Microsoft Office
Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei
Anleitung von SarekHLMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...