ahe
Goto Top

Fortschrittsanzeige beim Kopieren

Hallo,

ich möchte während eines Kopiervorgangs (viele, z. T. sehr große Dateien) eine Fortschrittsanzeige einblenden (z. B. durch Aneinanderreihung von Punkten), damit die Ausführenden nicht befürchten müssen, dass sich der Rechner aufgehängt hat...

Nun gibt es zwar beim Copy/Xcopy Befehl die Möglichkeit Dateinamen ein- bzw. auszublenden, etc. allerdings dachte ich eher an die Methode von Frank-Peter Schultze mit seiner Batch propy.cmd (http://www.fpschultze.de/PDdownloads+viewcat.list+P.htm).

Diese Methode hat jedoch einen kleinen Nachteil, ich kann sie bei meinem speziellen Problem nicht verwenden! Die Gründe folgen jetzt... face-smile

Ich möchte vor einer unattended Windows XP Installation (per PXE) einige Dateien vom Netz auf den Zielrechner kopieren. Da dies ein DOS Bootvorgang ist (Windows 98 DOS) habe ich keinerlei XP-Shell-Umgebung, sondern nur eine W98-DOS-Umgebung!

Das Kopieren funktioniert (per copy oder xcopy), allerdings möchte ich weder alle Dateien auflisten lassen, die kopiert werden, noch eine einfache stehende Meldung am Bildschirm belassen (da es rel. lange dauert dachte ich selbst schon, dass der Kopierprozess hängt...).

Die bereits oben erwähnte Batch ist schön, funktioniert nur leider nicht unter altem W98-DOS (s. u.) ...
Manche der eingesetzten Befehle gibt es nicht unter W98-DOS oder die Syntax ist neu/anders/erweitert. . .

:: __________________________________________________________________
::
::  Batch File:      propy.cmd
::  Author:          Frank-Peter Schultze
::
::  Updates:         http://www.fpschultze.de/
::  Enhancement Req.
::  And Bug Reports: support@fpschultze.de
::
::  Built/Tested On: Windows XP
::  Requirements:    
::
::  Purpose:         Copy a file showing a progress bar
::
::  Syntax:          propy's syntax corresponds to Windows XP's COPY command.  
::
::  State Changes:   
::
::  Assumptions And
::  Limitations:     
::
::  Last Update:     2005-09-19
:: __________________________________________________________________
::
 @Echo Off

  If %2!==! (
    Echo Copy a file showing a progress bar.
    Echo.
    Echo %~n0 source target [/copyoptions]
    Echo.
    Echo   source          The file^(s^) to be copied.
    Echo   target          The copy destination.
    Echo   copyoptions     Correspond to Windows XP's COPY command options.  
    Goto :EOF)

  SetLocal

::Set flag file
  Set propy.FlagFile=%TEMP%\%RANDOM%.tmp

::Set default progress bar character
  Set propy.ProgressBarChar=.

::Set default progress bar intervall (seconds)
  Set propy.ProgressBarWait=1

  If Exist %propy.FlagFile% Del %propy.Flagfile%
  Start /Min Copy %* ^& Echo. ^> %propy.Flagfile% ^& Exit
  (Set /P i=Copying %1) < NUL
  Set /A propy.ProgressBarWait += 1
 :Loop
  If Not Exist %propy.Flagfile% (
    (Set /P i=%propy.ProgressBarChar%) < NUL
    Ping -n %propy.ProgressBarWait% 127.0.0.1 > NUL
    Goto Loop)
  Del %propy.FlagFile%

  EndLocal


Ich wäre auch mit einem alternativem Kopier-Tool zufrieden. (ach ja, ping kann man auch durch die gute alte sleep.exe ersetzen...)

mfg
Axel

Content-ID: 58362

Url: https://administrator.de/contentid/58362

Ausgedruckt am: 25.11.2024 um 05:11 Uhr

36539
36539 06.05.2007, aktualisiert am 18.10.2012 um 18:31:55 Uhr
Goto Top
Hallo,
warum benutzt Du nicht mal die Suche hier?
Fortschrittanzeige bei batch bzw batchkopiervorgang

Verabschiede Dich von dem Vorhaben.
ahe
ahe 07.05.2007 um 09:26:13 Uhr
Goto Top
Hallo onegasee59,

sorry!

Habe wohl das falsche Suchwort (Progressbar) verwendet oder es war einfach zu spät, die Weinschorle war zu wenig Schorle oder bin einfach zu blöd die Suche zu bedienen ... face-smile

Interessanter Thread, wenn auch sehr entmutigend. Dann muss ich eben für die Kollegen hinschreiben, dass sie halt Geduld haben müssen, bis es weiter geht...

Das Script von Biber ist zwar schön, funktioniert nur leider nicht so ohne Weiteres unter 'normalem' DOS, in der WXP-Shell dagegen schon.

Bist wohl auch noch etwas länger 'unterwegs' oder schon wieder?

mfg
Axel
ahe
ahe 07.05.2007 um 12:20:02 Uhr
Goto Top
Hallo,

ich habe inzwischen doch ein Tool gefunden, dass mir eine gewisse Übersicht und Fortschrittsüberwachung liefert:

Bcopy: zum Kopieren einzelner Dateien, zeigt einen Balken an
http://www.pc-tools.net/dos/bpcopy/

Nachteil: kann nur einzelne Dateien, nicht aber einen kompletten Verzeichnisbaum


Zcopy: zum Kopieren von Dateien und Verzeichnissen, zeigt eine Liste mit Fortschritt an.
http://www.bootablecd.de/dossoftware.htm

Nachteil: kann nur Verzeichnisse bis zur siebten Schachtelungstiefe (alter MS-DOS-Bug, hatte der NC auch damals), aber mehr brauch' ich ohnehin nicht face-smile


Ich hoffe so meinen Kollegen anzeigen zu können, dass der Rechner währed des Kopiervorgangs nicht abgeschmiert ist... auch, wenn es 'mal etwas länger dauert ... face-smile

mfg
Axel
skohls
skohls 09.05.2007 um 17:51:07 Uhr
Goto Top
Hast du es schon mal mit robocopy versucht? Da gibts für jede Datei wunderbare Fortschritt-%-Anzeigen.

Robocopy (nebst einer Flut passender Parameter...) textet dir während des Kopiervorganges die CMD-Box zwar ganz schön voll, aber das lässt sich ja in eine andere Box auslagern:

start "Dateien kopieren..." /WAIT robocopy.cmd <source> <destination> /R:0 /ETA /LOG:file

robocopy hat auch sonst viele Gimmicks: es produziert ordentliche Returncodes und Logs, es kopiert defaultmässig bereits vorhandene Dateien nicht nochmal, und mit /ETA bekomst du sogar die voraussichtliche Restdauer...
Mark41
Mark41 18.09.2007 um 10:17:05 Uhr
Goto Top
Hi, weißt du zufällig auch, wie man nur einen gesamtfortschritt mit robocopy bekommt, udn nicht eine anzeige für jede einzelne datei ? wäre für hilfe sehr dankbar

mfg