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

Batch mit datum und Zeit Copieren und verschieben

Frage Entwicklung Batch & Shell

Mitglied: G4rfi3ld

G4rfi3ld (Level 1) - Jetzt verbinden

30.01.2009, aktualisiert 31.01.2009, 4797 Aufrufe, 4 Kommentare

Hallo erst mal beisammen ich habs mir lange überlegt ne bat datei zu erstellen aber meine cfg kann es nicht also hab ich mich n bisschen schlau gemacht um folgendes Proplem zu lösen:
Aufgabe meiner seits ist 8 dateien (demo01.dem bis demo08.dem) aus dem überordner zu copieren und in einen Unterordner zu schreiben ( demo01_DATUM_Zeit.dem bis demo08_DATUM_ZEIT.dem so sollten die neuen datein aussehen)
Folgendes kam dabei herraus.

Batch datei
echo
cls
set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set zeit=%time:~%
set stunden=%time:~0,2%
set minuten=%time:~3,2%

ren demo01.dem demo01_%jahr%%monat%%tag%_%stunden%%minuten%.dem

xcopy *.dem D:\Steam\SteamApps\MEINNAME\counter-strike source\cstrike\DEMOS
D:\Steam\SteamApps\MEINNAME\counter-strike source\cstrike\cfg in diesem Ordner wir die batch datei ausgefürt ...
D:\Steam\SteamApps\MEINNAME\counter-strike source\cstrike in diesem Ordner sind die zu Kopierenden Datein gespeichert
D:\Steam\SteamApps\MEINNAME\counter-strike source\cstrike\DEMOS und in diesem Ordner sollten die Dateien gespeichert Werden

1. Ich könnte mit Xcopy die dateien Kopieren aber da liegt eben das problem das sich der Ordnername MEINNAME und das laufwerk von PC zu PC Variiert und vor allem wie springe ich von dem unterordner in den Überordner ohne den ganzen Pfad angeben zu müssen ???

2. Es würde mir schon reichen wen er die Datei demo01.dem copiert und in den DEMOS ordner mit geänderten namen speichert.

3. Es ist net gerade viel was ich geschaft habe aber las mal n Bäcker einen Eifelturm bauen (90jahre später hätte er vll das fundament rauf gehen würd ich nicht).........

ich hoffe ihr könnt mir helfen
Mitglied: bastla
31.01.2009 um 00:28 Uhr
Hallo G4rfi3ld und willkommen im Forum!

Ungetestet etwa so:
01.
@echo off & setlocal 
02.
set "Quelle=demo*.dem" 
03.
set "Ziel=DEMOS" 
04.
 
05.
set "jahr=%date:~-4%" 
06.
set "monat=%date:~-7,2%" 
07.
set "tag=%date:~-10,2%" 
08.
set "stunden=%time:~0,2%" 
09.
set "stunden=%stunden: =0%" 
10.
set "minuten=%time:~3,2%" 
11.
 
12.
pushd .. 
13.
if not exist "%Ziel%" md "%Ziel%" 
14.
for %%i in ("%Quelle%") do copy "%%i" "%Ziel%\%%~ni_%jahr%%monat%%tag%_%stunden%%minuten%%%~xi" >nul 
15.
popd
Grüße
bastla
Bitte warten ..
Mitglied: G4rfi3ld
31.01.2009 um 10:46 Uhr
Bastla ... Pervect.... functioniert!!!
Dickes danke

aber hätte da noch ein zwei fragen:
1. Betreff der Zeile 1; in der zeile setzt du mit echo off die bildliche ausgabe auf aus und mit setlocal auf den aktuellen ordner wo die datei sich befindet ???
01.
> @echo off & setlocal 
02.
 
2. In zeile 2-4 wird die Datei und das Ziel gesetzt. Aber wodurch weis das bat, datei das es in dem Ordner einen Unterordner erstellen soll?
01.
> set "Quelle=demo*.dem" 
02.
> set "Ziel=DEMOS" 
03.
>

3. Zeile 5-11 ist so wie es ist. Weis zwar nicht wo die Prozente herkommen aber ist halt so.
01.
> set "jahr=%date:~-4%" 
02.
> set "monat=%date:~-7,2%" 
03.
> set "tag=%date:~-10,2%" 
04.
> set "stunden=%time:~0,2%" 
05.
> set "stunden=%stunden: =0%" 
06.
> set "minuten=%time:~3,2%" 
07.
>

4. Pushd... sagt mir garnix kann mir auch nichts runter forstellen. zeile 5 ist soweit klar wenn nicht da dann erstelle Ordner
01.
> pushd .. 
02.
> if not exist "%Ziel%" md "%Ziel%"
5 warum hier zwei prozentreichen ohne ihrgendwas darin zu haben ???
01.
> for %%i in ("%Quelle%") do copy "%%i" 
02.
> "%Ziel%\%%~ni_%jahr%%monat%%tag%_%stunden%%minuten%%%~xi" >nul 
03.
> popd 
04.
> 
Ich hab schon einiges gegoogelt aber alles wurde auch net klar...

Aber trotzdem Danke
bastla
Bitte warten ..
Mitglied: bastla
31.01.2009 um 11:10 Uhr
Hallo G4rfi3ld!

Bevor ich (irgendwann später am Tag) dazu komme, hast Du vielleicht selbst schon einige Antworten auf Deine Fragen gefunden - dazu an der Eingabeaufforderung eingeben:
01.
setlocal /? 
02.
pushd /? 
03.
for /?
Kurz zu 2 und 5
Aber wodurch weis das bat, datei das es in dem Ordner einen Unterordner erstellen soll?
Es wird ja zunächst nur der Name des Ordners als Variable %Ziel% festgelegt - die Verwendung der Variablen (zB in Zeile 13) entscheidet darüber, was damit gemeint ist ("md" kann sich zB nur auf einen Ordner beziehen ...)

warum hier zwei prozentreichen ohne ihrgendwas darin zu haben ???
Zwei Prozentzeichen werden in Batch für Schleifenvariable benötigt (und bei der Verarbeitung zu einem reduziert, wodurch dann wie an der Eingabezeile etwa ein %i daraus wird).

Grüße
bastla
Bitte warten ..
Mitglied: G4rfi3ld
31.01.2009 um 11:27 Uhr
Ok danke bastla
werd mich noch weiter am batch datein versuchen ich hoffe ich bekomme es hin.
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

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

Frage von JayyyH zum Thema Switche und Hubs ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...