Add DOS-side baseline scripts for the Novell tools used to compare the reimplemented public utilities. The suite covers the current baseline set: MAP SLIST WHOAMI LOGIN / LOGOUT NDIR NCOPY FLAG FLAGDIR CREATOR RIGHTS GRANT REVOKE REMOVE It also includes supporting trustee, rights, rename, move, delete and file-operation tests. Each test writes reproducible output into a per-tool CMP directory and provides a matching ZIP helper for collecting the results. The ZIP helpers clean generated test trees afterwards so SYS: does not keep accumulating temporary directories. This is the Novell baseline layer only. A later change can extend the same scripts to run the full comparison cycle: NPUBLIC baseline -> PUBLIC implementation -> NPUBLIC control
263 lines
6.5 KiB
Batchfile
263 lines
6.5 KiB
Batchfile
@ECHO OFF
|
|
REM NCPTSTN.BAT
|
|
REM Novell-only NCOPY baseline for MARS NWE.
|
|
REM
|
|
REM NPUBLIC = originale Novell Tools
|
|
REM PUBLIC = MARS/dosutils Tools
|
|
REM
|
|
REM Testordner:
|
|
REM F:\TCOPY
|
|
REM
|
|
REM Vergleichsdateien:
|
|
REM F:\NCMP\PRE\*.OUT
|
|
REM F:\NCMP\POST\*.OUT
|
|
REM
|
|
REM Wichtig fuer Novell NCOPY:
|
|
REM - Bei Multi-File Copy muss das Zielverzeichnis vorher existieren,
|
|
REM sonst interpretiert NCOPY das Ziel als einzelne Datei.
|
|
REM - /E ist nur zusammen mit /S gueltig.
|
|
REM - Fuer Multi-File Copy ist SRC\*.* + TO + Zielverzeichnis am klarsten.
|
|
|
|
CLS
|
|
ECHO === NCPTSTN: Novell NCOPY Baseline ===
|
|
ECHO.
|
|
ECHO Dieses Script benutzt NPUBLIC\NCOPY und schreibt PRE/POST Vergleichsdaten.
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C00: Testordner vorbereiten ===
|
|
F:
|
|
CD \
|
|
|
|
REM --- Clean generated test/result directories (contents only). ---
|
|
IF EXIST TNCOPY\NUL DELTREE /Y TNCOPY\*.*
|
|
IF NOT EXIST TCOPY MD TCOPY
|
|
IF NOT EXIST TCOPY\SRC MD TCOPY\SRC
|
|
IF NOT EXIST TCOPY\SRC\SUB MD TCOPY\SRC\SUB
|
|
IF NOT EXIST TCOPY\SRC\EMPTY MD TCOPY\SRC\EMPTY
|
|
IF NOT EXIST TCOPY\DST MD TCOPY\DST
|
|
IF NOT EXIST TCOPY\DST\SCPY MD TCOPY\DST\SCPY
|
|
IF NOT EXIST TCOPY\DST\ECPY MD TCOPY\DST\ECPY
|
|
IF NOT EXIST TCOPY\ARCH MD TCOPY\ARCH
|
|
IF NOT EXIST TCOPY\ARCH\ACPY MD TCOPY\ARCH\ACPY
|
|
IF NOT EXIST TCOPY\ARCH\MCPY MD TCOPY\ARCH\MCPY
|
|
IF NOT EXIST NCMP MD NCMP
|
|
IF NOT EXIST NCMP\PRE MD NCMP\PRE
|
|
IF NOT EXIST NCMP\POST MD NCMP\POST
|
|
ECHO NCOPY TEST A > TCOPY\SRC\A.TXT
|
|
ECHO NCOPY TEST B > TCOPY\SRC\B.TXT
|
|
ECHO NCOPY TEST C > TCOPY\SRC\SUB\C.TXT
|
|
ECHO OLD DEST FILE > TCOPY\DST\A.TXT
|
|
ECHO.
|
|
ECHO Angelegt/geprueft:
|
|
ECHO F:\TCOPY\SRC\A.TXT
|
|
ECHO F:\TCOPY\SRC\B.TXT
|
|
ECHO F:\TCOPY\SRC\SUB\C.TXT
|
|
ECHO F:\TCOPY\SRC\EMPTY
|
|
ECHO F:\TCOPY\DST\SCPY
|
|
ECHO F:\TCOPY\DST\ECPY
|
|
ECHO F:\TCOPY\ARCH\ACPY
|
|
ECHO F:\TCOPY\ARCH\MCPY
|
|
ECHO F:\NCMP\PRE / POST
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C01: Alte Vergleichsausgaben loeschen ===
|
|
DEL F:\NCMP\PRE\*.OUT
|
|
DEL F:\NCMP\POST\*.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C02: Attribute normalisieren ===
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\A.TXT N
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\B.TXT N
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\SUB\C.TXT N
|
|
NPUBLIC\FLAG F:\TCOPY\DST\A.TXT N
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C03: Testattribute setzen ===
|
|
ECHO A.TXT: +H +A
|
|
ECHO B.TXT: +RO +A
|
|
ECHO C.TXT: +A
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\A.TXT +H +A
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\B.TXT +RO +A
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\SUB\C.TXT +A
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C04: PRE-Ausgaben erzeugen ===
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\A.TXT > F:\NCMP\PRE\SRCA.OUT
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\B.TXT > F:\NCMP\PRE\SRCB.OUT
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\SUB\C.TXT > F:\NCMP\PRE\SRCC.OUT
|
|
NPUBLIC\NDIR F:\TCOPY\SRC > F:\NCMP\PRE\SRCNDIR.OUT
|
|
NPUBLIC\NDIR F:\TCOPY\SRC /DATES > F:\NCMP\PRE\SRCDATE.OUT
|
|
NPUBLIC\NDIR F:\TCOPY\SRC /RIGHTS > F:\NCMP\PRE\SRCRGHT.OUT
|
|
NPUBLIC\RIGHTS F:\TCOPY\SRC > F:\NCMP\PRE\SRCTRST.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C05: PRE Source NDIR ===
|
|
TYPE F:\NCMP\PRE\SRCNDIR.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C06: PRE Source DATES ===
|
|
TYPE F:\NCMP\PRE\SRCDATE.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C10: NCOPY normal copy A.TXT nach DST ===
|
|
NPUBLIC\NCOPY F:\TCOPY\SRC\A.TXT TO F:\TCOPY\DST\A1.TXT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C11: NCOPY overwrite mit /V ===
|
|
ECHO Erwartung: NCOPY fragt ggf. wegen bestehendem Ziel.
|
|
ECHO Wenn gefragt wird, overwrite bestaetigen.
|
|
NPUBLIC\NCOPY F:\TCOPY\SRC\A.TXT TO F:\TCOPY\DST\A.TXT /V
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C12: NCOPY B.TXT normal ===
|
|
NPUBLIC\NCOPY F:\TCOPY\SRC\B.TXT TO F:\TCOPY\DST\B.TXT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C13: NCOPY Subdirs mit /S ===
|
|
ECHO Zielverzeichnis SCPY existiert bereits.
|
|
NPUBLIC\NCOPY F:\TCOPY\SRC\*.* TO F:\TCOPY\DST\SCPY /S
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C14: NCOPY Subdirs inklusive leer mit /S /E ===
|
|
ECHO /E ist nur zusammen mit /S gueltig.
|
|
NPUBLIC\NCOPY F:\TCOPY\SRC\*.* TO F:\TCOPY\DST\ECPY /S /E
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C15: NCOPY Archive-Bit Copy mit /A /S ===
|
|
ECHO Zielverzeichnis ACPY existiert bereits.
|
|
NPUBLIC\NCOPY F:\TCOPY\SRC\*.* TO F:\TCOPY\ARCH\ACPY /A /S
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C16: NCOPY Archive-Bit Copy mit /M /S ===
|
|
ECHO Achtung: /M sollte Archive-Bit an Quelle loeschen.
|
|
NPUBLIC\NCOPY F:\TCOPY\SRC\*.* TO F:\TCOPY\ARCH\MCPY /M /S
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C20: POST-Ausgaben erzeugen ===
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\A.TXT > F:\NCMP\POST\SRCA.OUT
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\B.TXT > F:\NCMP\POST\SRCB.OUT
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\SUB\C.TXT > F:\NCMP\POST\SRCC.OUT
|
|
NPUBLIC\FLAG F:\TCOPY\DST\A1.TXT > F:\NCMP\POST\DSTA1.OUT
|
|
NPUBLIC\FLAG F:\TCOPY\DST\A.TXT > F:\NCMP\POST\DSTA.OUT
|
|
NPUBLIC\FLAG F:\TCOPY\DST\B.TXT > F:\NCMP\POST\DSTB.OUT
|
|
NPUBLIC\NDIR F:\TCOPY\SRC > F:\NCMP\POST\SRCNDIR.OUT
|
|
NPUBLIC\NDIR F:\TCOPY\SRC /DATES > F:\NCMP\POST\SRCDATE.OUT
|
|
NPUBLIC\NDIR F:\TCOPY\DST > F:\NCMP\POST\DSTNDIR.OUT
|
|
NPUBLIC\NDIR F:\TCOPY\DST /DATES > F:\NCMP\POST\DSTDATE.OUT
|
|
NPUBLIC\NDIR F:\TCOPY\DST\SCPY /SUB > F:\NCMP\POST\SCPYSUB.OUT
|
|
NPUBLIC\NDIR F:\TCOPY\DST\ECPY /SUB > F:\NCMP\POST\ECPYSUB.OUT
|
|
NPUBLIC\NDIR F:\TCOPY\ARCH /SUB > F:\NCMP\POST\ARCHSUB.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C21: Vergleich Source A FLAG vor/nach ===
|
|
FC F:\NCMP\PRE\SRCA.OUT F:\NCMP\POST\SRCA.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C22: Vergleich Source B FLAG vor/nach ===
|
|
FC F:\NCMP\PRE\SRCB.OUT F:\NCMP\POST\SRCB.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C23: Vergleich Source C FLAG vor/nach ===
|
|
FC F:\NCMP\PRE\SRCC.OUT F:\NCMP\POST\SRCC.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C24: POST Destination NDIR ===
|
|
TYPE F:\NCMP\POST\DSTNDIR.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C25: POST Destination DATES ===
|
|
TYPE F:\NCMP\POST\DSTDATE.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C26: POST /S Copy SUB ===
|
|
TYPE F:\NCMP\POST\SCPYSUB.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C27: POST /E Copy SUB inklusive leer ===
|
|
TYPE F:\NCMP\POST\ECPYSUB.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C28: POST Archive Copy SUB ===
|
|
TYPE F:\NCMP\POST\ARCHSUB.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C29: POST Source nach /M ===
|
|
TYPE F:\NCMP\POST\SRCNDIR.OUT
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === C30: Cleanup Attribute ===
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\A.TXT N
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\B.TXT N
|
|
NPUBLIC\FLAG F:\TCOPY\SRC\SUB\C.TXT N
|
|
NPUBLIC\FLAG F:\TCOPY\DST\A.TXT N
|
|
NPUBLIC\FLAG F:\TCOPY\DST\A1.TXT N
|
|
NPUBLIC\FLAG F:\TCOPY\DST\B.TXT N
|
|
ECHO.
|
|
PAUSE
|
|
|
|
CLS
|
|
ECHO === NCPTSTN fertig ===
|
|
ECHO.
|
|
ECHO Vergleichsdateien:
|
|
ECHO F:\NCMP\PRE\*.OUT
|
|
ECHO F:\NCMP\POST\*.OUT
|
|
ECHO.
|
|
ECHO Im Serverlog pruefen:
|
|
ECHO open/create/read/write/close
|
|
ECHO overwrites
|
|
ECHO directory scans
|
|
ECHO Subdir copy /S und /S /E
|
|
ECHO Archive-bit Verhalten /A und /M
|
|
ECHO keine unerwarteten Completion Codes
|
|
ECHO.
|