Helpdesk
Menschen Wissenschaft Politik Mystery Kriminalfälle Spiritualität Verschwörungen Technologie Ufologie Natur Umfragen Unterhaltung
weitere Rubriken
PhilosophieTräumeOrteEsoterikLiteraturAstronomieHelpdeskGruppenGamingFilmeMusikClashVerbesserungenAllmysteryEnglish
Diskussions-Übersichten
BesuchtTeilgenommenAlleNeueGeschlossenLesenswertSchlüsselwörter
Schiebe oft benutzte Tabs in die Navigationsleiste (zurücksetzen).

Kennt sich jemand mit Batch aus?

23 Beiträge ▪ Schlüsselwörter: Programm, Programmierung, Batch ▪ Abonnieren: Feed E-Mail

Kennt sich jemand mit Batch aus?

12.12.2012 um 00:24
Suche jemanden der mir weiterhelfen kann brauch ein kleines programm in BATCH!

Anzeige
melden

Kennt sich jemand mit Batch aus?

12.12.2012 um 00:24
Programmieren: Hilfe & Austausch

hab hier schon geschrieben aber die wolllen nicht so recht


melden

Kennt sich jemand mit Batch aus?

12.12.2012 um 00:27
Abend alle zusammen,


Ich brauch ganz dringend Hilfe. Ich erzähl euch erst mal um was es geht also ich habe eine Software die mir Messdaten Ausspuckt und zwar in einen Ordner den ich Angebe der Pfad lautet
V:\Messdaten dort kommen jetzt folgende dateien rein.

PART_00001-Aktive Sicht.jpg
PART_00001-elt.htm
PART_00001-menu.htm
PART_00001.ELT
PART_00001.htm
PART_00001.REP
PART_00001.txt
PART_00001.vue
PART_00001.wif
PART_00001.wk2

PART ist forlaufend 1...2....3 usw

Wie muss ich die Batch schreiben damit er mir alle Parts1 Parts2 usw.. in einen Ordner schiebt der
V:\Messdaten\Part_00001\[DATEINAME].xxx
V:\Messdaten\Part_00002\[DATEINAME].xxx
V:\Messdaten\Part_00003\[DATEINAME].xxx

und so weiter was auch sehr schön wäre aktuelle datum und uhrzeit im Ordnernamen wäre aber nur ein schmankerl

wäre echt nett von euch wenn ihr helft
Habs nochmal her Kopiert

und das auch noch
Mir bereiten die datein mit der -[Text] dahinter Probleme ansonsten würde es

@echo on
for /F "Tokens=*" %%i in ('Dir /B *.*') do md "%%~ni"|copy "%%i" "%%~ni"
pause

damit gehen aber ich weis nicht wie ich das umschreiben muss damit er nur PART_XXXXX hernimmt ohne den text dahinter



melden

Kennt sich jemand mit Batch aus?

13.12.2012 um 20:50
@Carlo

Mach das doch mit Perl für GNU/Linux. Dabei könnte ich dir helfen.


melden

Kennt sich jemand mit Batch aus?

13.12.2012 um 21:40
@RaChXa

Hab aber kein plan davon :)

Kannst du C


melden

Kennt sich jemand mit Batch aus?

13.12.2012 um 22:20
@Carlo

Also ich könnte auf die Schnelle kein C-Programm für Windows schreiben, das obiges macht. Finde ich außerdem etwas umständlich. Unter Linux schreibe ich für soetwas immer Perlskripte.
Für GNU/Linux könnte ich dir ein geeignetes Skript schreiben.

Du kannst Perl auch für Windows benutzen, aber die Shell-Kommandos sind dort natürlich andere.
Batch ist meiner Meinung nach kompletter Misst (MS-Powershell-Skript ist etwas besser), aber vielleicht findest du auch jemanden der sich mit Batch auskennt.


melden

Kennt sich jemand mit Batch aus?

14.12.2012 um 10:35
Wenn du bereit bist dafür zu zahlen könnte ich dir ein c# programm schreiben, das deine aufgabe löst. Aber umsonst würde ich mich nicht dran setzen ;)


melden

Kennt sich jemand mit Batch aus?

14.12.2012 um 16:39
@Carlo
Haben die Dateien immer die selbe Präfix?
Also "Part_XXXXX"?

Und sind immer genau diese Dateien da?


melden

Kennt sich jemand mit Batch aus?

14.12.2012 um 19:41
#!/usr/bin/perl $wd= $ARGV[0]; [at_user]Array[/at_user]= `ls $wd`; foreach ([at_user]Array[/at_user]) { chomp($_); $a=($wd."/".$_); if(-f ($a) && $_=~m/PART_[0-9]{5}/ ) { $ziel_verz= $wd."/".substr($_,0,10); if (-e ($ziel_verz) ) { system ("mv \"$a\" \"$ziel_verz\""); } else { system ("mkdir \"$ziel_verz\""); system ("mv \"$a\" \"$ziel_verz\""); } } }


melden

Kennt sich jemand mit Batch aus?

16.12.2012 um 16:10
@RaChXa

Scheiss windows phone ich kann den link nicht anklicken aber danke schon mal ich schau es mir daheim an


melden

Kennt sich jemand mit Batch aus?

26.08.2013 um 21:52
Hi

das geht so:

=============> Schnipp <==========
@echo off
REM Schiebe Dateien PART_00001.* bis
REM PART_99999.* bis
REM in neu geschaffene Ordner
REM PART_00001 bis PART_99999

pushd V:\Messdaten
for /L %%A in (1,1,9) do call :work_part 0000%%A
for /L %%A in (10,1,99) do call :work_part 000%%A
for /L %%A in (100,1,999) do call :work_part 00%%A
for /L %%A in (1000,1,9999) do call :work_part 0%%A
for /L %%A in (10000,1,99999) do call :work_part %%A
popd
goto :EOF

:work_part
echo %time%: Suche PART_%1.*...
if not exist PART_%1.* goto :EOF
if not exist PART_%1\ md PART_%1
move PART_%1.* PART_%1\
=============> Schnapp <==========

als "messdaten.cmd" abspeichern


melden

Kennt sich jemand mit Batch aus?

12.12.2014 um 19:37
@z3001x
@RaChXa
@Fennek
@alliswrong


Hey leute,

@echo off
set /a X1=0
:1
set /a X1=%X1%+1
echo %X1%
pause
for /f "tokens=%X1% delims=;" %%i in (Text.cod) do if /i "%%i==A"(
goto 2
)
pause
goto 1
:2
echo geht
pause
goto 1


kann mir jemand sagen wo mein Fehler liegt"


melden

Kennt sich jemand mit Batch aus?

12.12.2014 um 19:38
for /f "tokens=%X1% delims=;" %%i in (Text.cod) do if /i "%%i==A"(
goto 2

hier is irgendwo der hunf begraben glaub ich


melden

Kennt sich jemand mit Batch aus?

12.12.2014 um 19:45
@z3001x

danke dir übringens für deine mühe 26.8 hab ich gar nicht gesehen


melden
Bodo ehemaliges Mitglied

Link kopieren
Lesezeichen setzen

Kennt sich jemand mit Batch aus?

15.12.2014 um 08:11
@Carlo
Ja, das "if" nach dem "do" löst den Syntaxfehler aus.


melden
Bodo ehemaliges Mitglied

Link kopieren
Lesezeichen setzen

Kennt sich jemand mit Batch aus?

15.12.2014 um 08:18
Hab das if runterverlagert. Ich habs gerade nur ausm Kopf programmiert. Hoff es passt.

[at_user]echo[/at_user] off set /a X1=0 :1 set /a X1=%X1%+1 echo %X1% pause for /f "tokens=%X1% delims=;" %%i in (Text.cod) do (goto 2) pause goto 1 :2 if /i "%%i==A"( echo geht pause ) goto 1


melden
Bodo ehemaliges Mitglied

Link kopieren
Lesezeichen setzen

Kennt sich jemand mit Batch aus?

15.12.2014 um 11:33
@Carlo
Habs mir mal angeguckt. Sicher, dass "%%i==A" richtig ist?

Ansonsten hab ich ein neues Code-Fuzzl

[at_user]echo[/at_user] off set /a X1=0 :1 set /a X1=%X1%+1 echo %X1% pause for /f "tokens=%X1% delims=;" %%i in (Text.cod) do (goto 2) pause goto 1 :2 if /i %%i=="A"(echo geht) goto 1

Ich guck, ob die Zeile "A" ist. Kein Plan, ob das so gewünscht ist.


melden

Kennt sich jemand mit Batch aus?

15.12.2014 um 16:36
Es soll ein vergleich zu einer Variable werden zu testzweck mal ein A genommen! Kann das sein das dad so ned funktioniert!


melden

Kennt sich jemand mit Batch aus?

15.12.2014 um 16:37
@Bodo

Bin gleich daheim dan schau ich mal was du gebastelt hast


melden

Kennt sich jemand mit Batch aus?

15.12.2014 um 16:39
@Bodo

Wenn ich das mit c mache

#include Windows.h

System(forschleife)

Kann ich dann variablen von der forschleife an das c pgm übergeben?!

Vll umständlicher aber das Ziel zählt :)


Anzeige

melden