dosutils: match Novell paths for flags and trustees

Move FLAG, GRANT and REMOVE closer to the request paths used by the
Novell tools and extend the DOS comparison tests.

FLAG now reads attributes through the old NCP22 directory scan path and
writes them through NCP22/25 Set Directory/File Information. This keeps
extended attributes such as Delete Inhibit and Rename Inhibit intact and
matches the Novell behavior observed in the server logs.

GRANT now prefers NCP22/27 SetTrustee with an NCP87 fallback. Supervisor
rights are expanded like Novell does, so granting S sends and reports the
full SRWCEMFA mask. The visible output, path formatting and error text
are adjusted to match the Novell baseline.

REMOVE now prefers NCP22/2B DelTrustee with an NCP87 fallback. The
DelTrustee request layout is corrected, /SUBDIRS handling is aligned
with Novell, and the output/error text is matched to the baseline.

The FLAG, FLAGDIR, GRANT and REMOVE tests now compare NPUBLIC baselines
against the PUBLIC implementations and add delayed NOPASSUSER readback
checks using DLYSTRT and the maintainer LOGIN password option.
This commit is contained in:
Mario Fetka
2026-05-28 07:54:41 +02:00
parent 0fa4a6f700
commit 5da600c2a5
23 changed files with 2653 additions and 659 deletions

View File

@@ -1,116 +1,595 @@
@ECHO OFF
REM RMVSTA.BAT
REM Automated REMOVE baseline test for MARS NWE.
REM Automated REMOVE comparison test for MARS NWE.
REM
REM Run as SUPERVISOR or a user with Access Control on F:\RMVTEST.
REM Uses \NPUBLIC\REMOVE as Novell baseline.
REM Setup uses \NPUBLIC\GRANT to create trustee assignments.
REM Direct mode:
REM OUT = Novell baseline using \NPUBLIC\REMOVE
REM PUBOUT = our implementation using \PUBLIC\REMOVE
REM
REM Result tree:
REM F:\RMVCMP
REM Test tree:
REM F:\RMVTEST
REM User-context mode:
REM REMOVE is run as SUPERVISOR against NOPASSUSER.
REM DLYSTRT starts C:\RMVTMP\RMVC.BAT after this script exits.
REM RMVC logs in as NOPASSUSER and captures effective RIGHTS output.
REM
REM Optional automatic user-context mode requires:
REM SET LGNTPWD=your-supervisor-password
IF "%1"=="" GOTO PART1
IF "%1"=="PART2" GOTO PART2
IF "%1"=="part2" GOTO PART2
IF "%1"=="Part2" GOTO PART2
ECHO Usage: RMVSTA [PART2]
GOTO END
:PART1
F:
CD \
REM --- Clean generated test/result directories (contents only). ---
IF EXIST RMVTEST\NUL DELTREE /Y RMVTEST\*.*
IF EXIST RMVCMP\NUL DELTREE /Y RMVCMP\*.*
IF "%LGNTPWD%"=="" GOTO NEEDPWD
IF NOT EXIST RMVTEST\NUL MD RMVTEST
IF NOT EXIST RMVTEST\ONE\NUL MD RMVTEST\ONE
IF NOT EXIST RMVTEST\TREE\NUL MD RMVTEST\TREE
IF NOT EXIST RMVTEST\TREE\SUB1\NUL MD RMVTEST\TREE\SUB1
IF NOT EXIST RMVTEST\TREE\SUB2\NUL MD RMVTEST\TREE\SUB2
IF NOT EXIST RMVTEST\FILES\NUL MD RMVTEST\FILES
IF NOT EXIST RMVTEST\OPTBOTH\NUL MD RMVTEST\OPTBOTH
IF NOT EXIST RMVTEST\OPTBOTH\SUB\NUL MD RMVTEST\OPTBOTH\SUB
IF NOT EXIST RMVCMP\NUL MD RMVCMP
IF NOT EXIST RMVCMP\OUT\NUL MD RMVCMP\OUT
IF NOT EXIST RMVCMP\SETUP\NUL MD RMVCMP\SETUP
REM --- Clean generated test/result directories. ---
IF EXIST RMVTEST\*.* DELTREE /Y RMVTEST
IF EXIST RMVCMP\*.* DELTREE /Y RMVCMP
IF EXIST C:\RMVTMP\*.* DELTREE /Y C:\RMVTMP
ECHO REMOVE ROOT FILE > F:\RMVTEST\ROOT.TXT
ECHO REMOVE ONE FILE > F:\RMVTEST\ONE\ONE.TXT
ECHO REMOVE TREE ROOT FILE > F:\RMVTEST\TREE\TROOT.TXT
ECHO REMOVE SUB1 FILE > F:\RMVTEST\TREE\SUB1\SUB1.TXT
ECHO REMOVE SUB2 FILE > F:\RMVTEST\TREE\SUB2\SUB2.TXT
ECHO REMOVE FILE A > F:\RMVTEST\FILES\A.TXT
ECHO REMOVE FILE B > F:\RMVTEST\FILES\B.TXT
ECHO REMOVE OPT ROOT > F:\RMVTEST\OPTBOTH\O.TXT
ECHO REMOVE OPT SUB > F:\RMVTEST\OPTBOTH\SUB\S.TXT
IF NOT EXIST RMVTEST MD RMVTEST
IF NOT EXIST RMVCMP MD RMVCMP
IF NOT EXIST RMVCMP\OUT MD RMVCMP\OUT
IF NOT EXIST RMVCMP\PUBOUT MD RMVCMP\PUBOUT
IF NOT EXIST RMVCMP\SETUP MD RMVCMP\SETUP
IF NOT EXIST C:\RMVTMP MD C:\RMVTMP
IF NOT EXIST C:\RMVTMP\UNOV MD C:\RMVTMP\UNOV
IF NOT EXIST C:\RMVTMP\UPUB MD C:\RMVTMP\UPUB
IF NOT EXIST C:\RMVTMP\USETUP MD C:\RMVTMP\USETUP
ECHO RMVSTA REMOVE baseline test > F:\RMVCMP\RUN.LOG
ECHO Run this as SUPERVISOR or equivalent. >> F:\RMVCMP\RUN.LOG
ECHO Captures \NPUBLIC\REMOVE output against user MARIO. >> F:\RMVCMP\RUN.LOG
ECHO Setup uses \NPUBLIC\GRANT. >> F:\RMVCMP\RUN.LOG
ECHO RMVSTA REMOVE comparison test > F:\RMVCMP\RUN.LOG
ECHO OUT = Novell baseline with \NPUBLIC\REMOVE >> F:\RMVCMP\RUN.LOG
ECHO PUBOUT = our implementation with \PUBLIC\REMOVE >> F:\RMVCMP\RUN.LOG
ECHO User-context target: NOPASSUSER >> F:\RMVCMP\RUN.LOG
ECHO. >> F:\RMVCMP\RUN.LOG
ECHO === D01 usage/help === >> F:\RMVCMP\RUN.LOG
ECHO Starting D01_HELP...
\NPUBLIC\REMOVE /? > F:\RMVCMP\OUT\D01_HELP.OUT
\PUBLIC\REMOVE /? > F:\RMVCMP\PUBOUT\D01_HELP.OUT
ECHO Starting D02_NOAR...
\NPUBLIC\REMOVE > F:\RMVCMP\OUT\D02_NOAR.OUT
\PUBLIC\REMOVE > F:\RMVCMP\PUBOUT\D02_NOAR.OUT
ECHO === D02 no arguments === >> F:\RMVCMP\RUN.LOG
\NPUBLIC\REMOVE > F:\RMVCMP\OUT\D02_NOARGS.OUT
REM --- Setup matrix directories/files. ---
IF NOT EXIST RMVTEST\G10 MD RMVTEST\G10
ECHO G10_R > F:\RMVTEST\G10\T.TXT
IF NOT EXIST RMVTEST\G11 MD RMVTEST\G11
ECHO G11_W > F:\RMVTEST\G11\T.TXT
IF NOT EXIST RMVTEST\G12 MD RMVTEST\G12
ECHO G12_C > F:\RMVTEST\G12\T.TXT
IF NOT EXIST RMVTEST\G13 MD RMVTEST\G13
ECHO G13_E > F:\RMVTEST\G13\T.TXT
IF NOT EXIST RMVTEST\G14 MD RMVTEST\G14
ECHO G14_M > F:\RMVTEST\G14\T.TXT
IF NOT EXIST RMVTEST\G15 MD RMVTEST\G15
ECHO G15_F > F:\RMVTEST\G15\T.TXT
IF NOT EXIST RMVTEST\G16 MD RMVTEST\G16
ECHO G16_A > F:\RMVTEST\G16\T.TXT
IF NOT EXIST RMVTEST\G17 MD RMVTEST\G17
ECHO G17_S > F:\RMVTEST\G17\T.TXT
IF NOT EXIST RMVTEST\G20 MD RMVTEST\G20
ECHO G20_RF > F:\RMVTEST\G20\T.TXT
IF NOT EXIST RMVTEST\G21 MD RMVTEST\G21
ECHO G21_RW > F:\RMVTEST\G21\T.TXT
IF NOT EXIST RMVTEST\G22 MD RMVTEST\G22
ECHO G22_RWC > F:\RMVTEST\G22\T.TXT
IF NOT EXIST RMVTEST\G23 MD RMVTEST\G23
ECHO G23_RWCE > F:\RMVTEST\G23\T.TXT
IF NOT EXIST RMVTEST\G24 MD RMVTEST\G24
ECHO G24_RAL > F:\RMVTEST\G24\T.TXT
IF NOT EXIST RMVTEST\G25 MD RMVTEST\G25
ECHO G25_SAL > F:\RMVTEST\G25\T.TXT
IF NOT EXIST RMVTEST\G26 MD RMVTEST\G26
ECHO G26_ALL > F:\RMVTEST\G26\T.TXT
IF NOT EXIST RMVTEST\G27 MD RMVTEST\G27
ECHO G27_N > F:\RMVTEST\G27\T.TXT
IF NOT EXIST RMVTEST\G30 MD RMVTEST\G30
ECHO G30_RE > F:\RMVTEST\G30\T.TXT
IF NOT EXIST RMVTEST\G31 MD RMVTEST\G31
ECHO G31_RWF > F:\RMVTEST\G31\T.TXT
IF NOT EXIST RMVTEST\G32 MD RMVTEST\G32
ECHO G32_RCM > F:\RMVTEST\G32\T.TXT
IF NOT EXIST RMVTEST\G33 MD RMVTEST\G33
ECHO G33_RFA > F:\RMVTEST\G33\T.TXT
IF NOT EXIST RMVTEST\G34 MD RMVTEST\G34
ECHO G34_WCM > F:\RMVTEST\G34\T.TXT
IF NOT EXIST RMVTEST\G35 MD RMVTEST\G35
ECHO G35_EMF > F:\RMVTEST\G35\T.TXT
IF NOT EXIST RMVTEST\G36 MD RMVTEST\G36
ECHO G36_RMF > F:\RMVTEST\G36\T.TXT
IF NOT EXIST RMVTEST\G37 MD RMVTEST\G37
ECHO G37_REMA > F:\RMVTEST\G37\T.TXT
IF NOT EXIST RMVTEST\G38 MD RMVTEST\G38
ECHO G38_SR > F:\RMVTEST\G38\T.TXT
IF NOT EXIST RMVTEST\G39 MD RMVTEST\G39
ECHO G39_SRF > F:\RMVTEST\G39\T.TXT
IF NOT EXIST RMVTEST\G40 MD RMVTEST\G40
ECHO G40_SWCM > F:\RMVTEST\G40\T.TXT
IF NOT EXIST RMVTEST\F10 MD RMVTEST\F10
ECHO F10_R > F:\RMVTEST\F10\T.TXT
IF NOT EXIST RMVTEST\F11 MD RMVTEST\F11
ECHO F11_RF > F:\RMVTEST\F11\T.TXT
IF NOT EXIST RMVTEST\F12 MD RMVTEST\F12
ECHO F12_RAL > F:\RMVTEST\F12\T.TXT
IF NOT EXIST RMVTEST\F13 MD RMVTEST\F13
ECHO F13_ALL > F:\RMVTEST\F13\T.TXT
IF NOT EXIST RMVTEST\F14 MD RMVTEST\F14
ECHO F14_N > F:\RMVTEST\F14\T.TXT
IF NOT EXIST RMVTEST\F15 MD RMVTEST\F15
ECHO F15_S > F:\RMVTEST\F15\T.TXT
IF NOT EXIST RMVTEST\F16 MD RMVTEST\F16
ECHO F16_SAL > F:\RMVTEST\F16\T.TXT
IF NOT EXIST RMVTEST\S10 MD RMVTEST\S10
IF NOT EXIST RMVTEST\S10\S1 MD RMVTEST\S10\S1
IF NOT EXIST RMVTEST\S10\S2 MD RMVTEST\S10\S2
ECHO S10_R > F:\RMVTEST\S10\S1\T.TXT
ECHO S10_R > F:\RMVTEST\S10\S2\T.TXT
IF NOT EXIST RMVTEST\S11 MD RMVTEST\S11
IF NOT EXIST RMVTEST\S11\S1 MD RMVTEST\S11\S1
IF NOT EXIST RMVTEST\S11\S2 MD RMVTEST\S11\S2
ECHO S11_RWC > F:\RMVTEST\S11\S1\T.TXT
ECHO S11_RWC > F:\RMVTEST\S11\S2\T.TXT
IF NOT EXIST RMVTEST\S12 MD RMVTEST\S12
IF NOT EXIST RMVTEST\S12\S1 MD RMVTEST\S12\S1
IF NOT EXIST RMVTEST\S12\S2 MD RMVTEST\S12\S2
ECHO S12_ALL > F:\RMVTEST\S12\S1\T.TXT
ECHO S12_ALL > F:\RMVTEST\S12\S2\T.TXT
IF NOT EXIST RMVTEST\S13 MD RMVTEST\S13
IF NOT EXIST RMVTEST\S13\S1 MD RMVTEST\S13\S1
IF NOT EXIST RMVTEST\S13\S2 MD RMVTEST\S13\S2
ECHO S13_SAL > F:\RMVTEST\S13\S1\T.TXT
ECHO S13_SAL > F:\RMVTEST\S13\S2\T.TXT
ECHO === D10 remove USER MARIO from directory === >> F:\RMVCMP\RUN.LOG
\NPUBLIC\GRANT R F FOR F:\RMVTEST\ONE TO USER MARIO > F:\RMVCMP\SETUP\S10_GRANT.OUT
\NPUBLIC\REMOVE USER MARIO FROM F:\RMVTEST\ONE > F:\RMVCMP\OUT\D10_DIR_USER.OUT
IF NOT EXIST RMVTEST\ERR MD RMVTEST\ERR
ECHO ERR > F:\RMVTEST\ERR\T.TXT
ECHO === D11 remove MARIO without USER keyword === >> F:\RMVCMP\RUN.LOG
\NPUBLIC\GRANT R F FOR F:\RMVTEST\ONE TO USER MARIO > F:\RMVCMP\SETUP\S11_GRANT.OUT
\NPUBLIC\REMOVE MARIO FROM F:\RMVTEST\ONE > F:\RMVCMP\OUT\D11_DIR_IMPLICIT.OUT
REM --- Direct REMOVE output compare. Setup uses Novell GRANT for both sides. ---
ECHO Starting G10_R directory remove...
\NPUBLIC\GRANT R FOR F:\RMVTEST\G10 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G10_RNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G10 > F:\RMVCMP\OUT\G10_R.OUT
\NPUBLIC\GRANT R FOR F:\RMVTEST\G10 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G10_RPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G10 > F:\RMVCMP\PUBOUT\G10_R.OUT
ECHO Starting G11_W directory remove...
\NPUBLIC\GRANT W FOR F:\RMVTEST\G11 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G11_WNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G11 > F:\RMVCMP\OUT\G11_W.OUT
\NPUBLIC\GRANT W FOR F:\RMVTEST\G11 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G11_WPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G11 > F:\RMVCMP\PUBOUT\G11_W.OUT
ECHO Starting G12_C directory remove...
\NPUBLIC\GRANT C FOR F:\RMVTEST\G12 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G12_CNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G12 > F:\RMVCMP\OUT\G12_C.OUT
\NPUBLIC\GRANT C FOR F:\RMVTEST\G12 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G12_CPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G12 > F:\RMVCMP\PUBOUT\G12_C.OUT
ECHO Starting G13_E directory remove...
\NPUBLIC\GRANT E FOR F:\RMVTEST\G13 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G13_ENG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G13 > F:\RMVCMP\OUT\G13_E.OUT
\NPUBLIC\GRANT E FOR F:\RMVTEST\G13 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G13_EPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G13 > F:\RMVCMP\PUBOUT\G13_E.OUT
ECHO Starting G14_M directory remove...
\NPUBLIC\GRANT M FOR F:\RMVTEST\G14 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G14_MNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G14 > F:\RMVCMP\OUT\G14_M.OUT
\NPUBLIC\GRANT M FOR F:\RMVTEST\G14 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G14_MPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G14 > F:\RMVCMP\PUBOUT\G14_M.OUT
ECHO Starting G15_F directory remove...
\NPUBLIC\GRANT F FOR F:\RMVTEST\G15 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G15_FNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G15 > F:\RMVCMP\OUT\G15_F.OUT
\NPUBLIC\GRANT F FOR F:\RMVTEST\G15 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G15_FPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G15 > F:\RMVCMP\PUBOUT\G15_F.OUT
ECHO Starting G16_A directory remove...
\NPUBLIC\GRANT A FOR F:\RMVTEST\G16 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G16_ANG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G16 > F:\RMVCMP\OUT\G16_A.OUT
\NPUBLIC\GRANT A FOR F:\RMVTEST\G16 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G16_APG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G16 > F:\RMVCMP\PUBOUT\G16_A.OUT
ECHO Starting G17_S directory remove...
\NPUBLIC\GRANT S FOR F:\RMVTEST\G17 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G17_SNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G17 > F:\RMVCMP\OUT\G17_S.OUT
\NPUBLIC\GRANT S FOR F:\RMVTEST\G17 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G17_SPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G17 > F:\RMVCMP\PUBOUT\G17_S.OUT
ECHO Starting G20_RF directory remove...
\NPUBLIC\GRANT R F FOR F:\RMVTEST\G20 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G20_RFNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G20 > F:\RMVCMP\OUT\G20_RF.OUT
\NPUBLIC\GRANT R F FOR F:\RMVTEST\G20 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G20_RFPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G20 > F:\RMVCMP\PUBOUT\G20_RF.OUT
ECHO Starting G21_RW directory remove...
\NPUBLIC\GRANT R W FOR F:\RMVTEST\G21 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G21_RWNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G21 > F:\RMVCMP\OUT\G21_RW.OUT
\NPUBLIC\GRANT R W FOR F:\RMVTEST\G21 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G21_RWPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G21 > F:\RMVCMP\PUBOUT\G21_RW.OUT
ECHO Starting G22_RWC directory remove...
\NPUBLIC\GRANT R W C FOR F:\RMVTEST\G22 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G22_RWCNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G22 > F:\RMVCMP\OUT\G22_RWC.OUT
\NPUBLIC\GRANT R W C FOR F:\RMVTEST\G22 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G22_RWCPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G22 > F:\RMVCMP\PUBOUT\G22_RWC.OUT
ECHO Starting G23_RWCE directory remove...
\NPUBLIC\GRANT R W C E FOR F:\RMVTEST\G23 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G23_RWCENG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G23 > F:\RMVCMP\OUT\G23_RWCE.OUT
\NPUBLIC\GRANT R W C E FOR F:\RMVTEST\G23 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G23_RWCEPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G23 > F:\RMVCMP\PUBOUT\G23_RWCE.OUT
ECHO Starting G24_RAL directory remove...
\NPUBLIC\GRANT R W C E M F A FOR F:\RMVTEST\G24 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G24_RALNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G24 > F:\RMVCMP\OUT\G24_RAL.OUT
\NPUBLIC\GRANT R W C E M F A FOR F:\RMVTEST\G24 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G24_RALPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G24 > F:\RMVCMP\PUBOUT\G24_RAL.OUT
ECHO Starting G25_SAL directory remove...
\NPUBLIC\GRANT S R W C E M F A FOR F:\RMVTEST\G25 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G25_SALNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G25 > F:\RMVCMP\OUT\G25_SAL.OUT
\NPUBLIC\GRANT S R W C E M F A FOR F:\RMVTEST\G25 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G25_SALPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G25 > F:\RMVCMP\PUBOUT\G25_SAL.OUT
ECHO Starting G26_ALL directory remove...
\NPUBLIC\GRANT ALL FOR F:\RMVTEST\G26 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G26_ALLNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G26 > F:\RMVCMP\OUT\G26_ALL.OUT
\NPUBLIC\GRANT ALL FOR F:\RMVTEST\G26 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G26_ALLPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G26 > F:\RMVCMP\PUBOUT\G26_ALL.OUT
ECHO Starting G27_N directory remove...
\NPUBLIC\GRANT N FOR F:\RMVTEST\G27 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G27_NNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G27 > F:\RMVCMP\OUT\G27_N.OUT
\NPUBLIC\GRANT N FOR F:\RMVTEST\G27 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G27_NPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G27 > F:\RMVCMP\PUBOUT\G27_N.OUT
ECHO Starting G30_RE directory remove...
\NPUBLIC\GRANT R E FOR F:\RMVTEST\G30 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G30_RENG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G30 > F:\RMVCMP\OUT\G30_RE.OUT
\NPUBLIC\GRANT R E FOR F:\RMVTEST\G30 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G30_REPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G30 > F:\RMVCMP\PUBOUT\G30_RE.OUT
ECHO Starting G31_RWF directory remove...
\NPUBLIC\GRANT R W F FOR F:\RMVTEST\G31 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G31_RWFNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G31 > F:\RMVCMP\OUT\G31_RWF.OUT
\NPUBLIC\GRANT R W F FOR F:\RMVTEST\G31 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G31_RWFPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G31 > F:\RMVCMP\PUBOUT\G31_RWF.OUT
ECHO Starting G32_RCM directory remove...
\NPUBLIC\GRANT R C M FOR F:\RMVTEST\G32 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G32_RCMNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G32 > F:\RMVCMP\OUT\G32_RCM.OUT
\NPUBLIC\GRANT R C M FOR F:\RMVTEST\G32 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G32_RCMPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G32 > F:\RMVCMP\PUBOUT\G32_RCM.OUT
ECHO Starting G33_RFA directory remove...
\NPUBLIC\GRANT R F A FOR F:\RMVTEST\G33 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G33_RFANG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G33 > F:\RMVCMP\OUT\G33_RFA.OUT
\NPUBLIC\GRANT R F A FOR F:\RMVTEST\G33 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G33_RFAPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G33 > F:\RMVCMP\PUBOUT\G33_RFA.OUT
ECHO Starting G34_WCM directory remove...
\NPUBLIC\GRANT W C M FOR F:\RMVTEST\G34 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G34_WCMNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G34 > F:\RMVCMP\OUT\G34_WCM.OUT
\NPUBLIC\GRANT W C M FOR F:\RMVTEST\G34 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G34_WCMPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G34 > F:\RMVCMP\PUBOUT\G34_WCM.OUT
ECHO Starting G35_EMF directory remove...
\NPUBLIC\GRANT E M F FOR F:\RMVTEST\G35 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G35_EMFNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G35 > F:\RMVCMP\OUT\G35_EMF.OUT
\NPUBLIC\GRANT E M F FOR F:\RMVTEST\G35 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G35_EMFPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G35 > F:\RMVCMP\PUBOUT\G35_EMF.OUT
ECHO Starting G36_RMF directory remove...
\NPUBLIC\GRANT R W C M F FOR F:\RMVTEST\G36 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G36_RMFNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G36 > F:\RMVCMP\OUT\G36_RMF.OUT
\NPUBLIC\GRANT R W C M F FOR F:\RMVTEST\G36 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G36_RMFPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G36 > F:\RMVCMP\PUBOUT\G36_RMF.OUT
ECHO Starting G37_REMA directory remove...
\NPUBLIC\GRANT R E M A FOR F:\RMVTEST\G37 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G37_REMANG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G37 > F:\RMVCMP\OUT\G37_REMA.OUT
\NPUBLIC\GRANT R E M A FOR F:\RMVTEST\G37 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G37_REMAPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G37 > F:\RMVCMP\PUBOUT\G37_REMA.OUT
ECHO Starting G38_SR directory remove...
\NPUBLIC\GRANT S R FOR F:\RMVTEST\G38 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G38_SRNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G38 > F:\RMVCMP\OUT\G38_SR.OUT
\NPUBLIC\GRANT S R FOR F:\RMVTEST\G38 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G38_SRPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G38 > F:\RMVCMP\PUBOUT\G38_SR.OUT
ECHO Starting G39_SRF directory remove...
\NPUBLIC\GRANT S R F FOR F:\RMVTEST\G39 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G39_SRFNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G39 > F:\RMVCMP\OUT\G39_SRF.OUT
\NPUBLIC\GRANT S R F FOR F:\RMVTEST\G39 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G39_SRFPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G39 > F:\RMVCMP\PUBOUT\G39_SRF.OUT
ECHO Starting G40_SWCM directory remove...
\NPUBLIC\GRANT S W C M FOR F:\RMVTEST\G40 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G40_SWCMNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G40 > F:\RMVCMP\OUT\G40_SWCM.OUT
\NPUBLIC\GRANT S W C M FOR F:\RMVTEST\G40 TO USER NOPASSUSER > F:\RMVCMP\SETUP\G40_SWCMPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\G40 > F:\RMVCMP\PUBOUT\G40_SWCM.OUT
ECHO Starting F10_R file remove...
\NPUBLIC\GRANT R FOR F:\RMVTEST\F10\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F10_RNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F10\T.TXT /FILES > F:\RMVCMP\OUT\F10_R.OUT
\NPUBLIC\GRANT R FOR F:\RMVTEST\F10\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F10_RPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F10\T.TXT /FILES > F:\RMVCMP\PUBOUT\F10_R.OUT
ECHO Starting F11_RF file remove...
\NPUBLIC\GRANT R F FOR F:\RMVTEST\F11\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F11_RFNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F11\T.TXT /FILES > F:\RMVCMP\OUT\F11_RF.OUT
\NPUBLIC\GRANT R F FOR F:\RMVTEST\F11\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F11_RFPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F11\T.TXT /FILES > F:\RMVCMP\PUBOUT\F11_RF.OUT
ECHO Starting F12_RAL file remove...
\NPUBLIC\GRANT R W C E M F A FOR F:\RMVTEST\F12\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F12_RALNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F12\T.TXT /FILES > F:\RMVCMP\OUT\F12_RAL.OUT
\NPUBLIC\GRANT R W C E M F A FOR F:\RMVTEST\F12\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F12_RALPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F12\T.TXT /FILES > F:\RMVCMP\PUBOUT\F12_RAL.OUT
ECHO Starting F13_ALL file remove...
\NPUBLIC\GRANT ALL FOR F:\RMVTEST\F13\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F13_ALLNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F13\T.TXT /FILES > F:\RMVCMP\OUT\F13_ALL.OUT
\NPUBLIC\GRANT ALL FOR F:\RMVTEST\F13\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F13_ALLPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F13\T.TXT /FILES > F:\RMVCMP\PUBOUT\F13_ALL.OUT
ECHO Starting F14_N file remove...
\NPUBLIC\GRANT N FOR F:\RMVTEST\F14\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F14_NNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F14\T.TXT /FILES > F:\RMVCMP\OUT\F14_N.OUT
\NPUBLIC\GRANT N FOR F:\RMVTEST\F14\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F14_NPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F14\T.TXT /FILES > F:\RMVCMP\PUBOUT\F14_N.OUT
ECHO Starting F15_S file remove...
\NPUBLIC\GRANT S FOR F:\RMVTEST\F15\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F15_SNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F15\T.TXT /FILES > F:\RMVCMP\OUT\F15_S.OUT
\NPUBLIC\GRANT S FOR F:\RMVTEST\F15\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F15_SPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F15\T.TXT /FILES > F:\RMVCMP\PUBOUT\F15_S.OUT
ECHO Starting F16_SAL file remove...
\NPUBLIC\GRANT S R W C E M F A FOR F:\RMVTEST\F16\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F16_SALNG.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F16\T.TXT /FILES > F:\RMVCMP\OUT\F16_SAL.OUT
\NPUBLIC\GRANT S R W C E M F A FOR F:\RMVTEST\F16\T.TXT TO USER NOPASSUSER /FILES > F:\RMVCMP\SETUP\F16_SALPG.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\F16\T.TXT /FILES > F:\RMVCMP\PUBOUT\F16_SAL.OUT
ECHO Starting S10_R subdirs remove...
\NPUBLIC\GRANT R FOR F:\RMVTEST\S10 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S10_RNR.OUT
\NPUBLIC\GRANT R FOR F:\RMVTEST\S10\S1 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S10_RN1.OUT
\NPUBLIC\GRANT R FOR F:\RMVTEST\S10\S2 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S10_RN2.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\S10 /SUBDIRS > F:\RMVCMP\OUT\S10_R.OUT
\NPUBLIC\GRANT R FOR F:\RMVTEST\S10 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S10_RPR.OUT
\NPUBLIC\GRANT R FOR F:\RMVTEST\S10\S1 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S10_RP1.OUT
\NPUBLIC\GRANT R FOR F:\RMVTEST\S10\S2 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S10_RP2.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\S10 /SUBDIRS > F:\RMVCMP\PUBOUT\S10_R.OUT
ECHO Starting S11_RWC subdirs remove...
\NPUBLIC\GRANT R W C FOR F:\RMVTEST\S11 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S11_RWCNR.OUT
\NPUBLIC\GRANT R W C FOR F:\RMVTEST\S11\S1 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S11_RWCN1.OUT
\NPUBLIC\GRANT R W C FOR F:\RMVTEST\S11\S2 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S11_RWCN2.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\S11 /SUBDIRS > F:\RMVCMP\OUT\S11_RWC.OUT
\NPUBLIC\GRANT R W C FOR F:\RMVTEST\S11 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S11_RWCPR.OUT
\NPUBLIC\GRANT R W C FOR F:\RMVTEST\S11\S1 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S11_RWCP1.OUT
\NPUBLIC\GRANT R W C FOR F:\RMVTEST\S11\S2 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S11_RWCP2.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\S11 /SUBDIRS > F:\RMVCMP\PUBOUT\S11_RWC.OUT
ECHO Starting S12_ALL subdirs remove...
\NPUBLIC\GRANT ALL FOR F:\RMVTEST\S12 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S12_ALLNR.OUT
\NPUBLIC\GRANT ALL FOR F:\RMVTEST\S12\S1 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S12_ALLN1.OUT
\NPUBLIC\GRANT ALL FOR F:\RMVTEST\S12\S2 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S12_ALLN2.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\S12 /SUBDIRS > F:\RMVCMP\OUT\S12_ALL.OUT
\NPUBLIC\GRANT ALL FOR F:\RMVTEST\S12 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S12_ALLPR.OUT
\NPUBLIC\GRANT ALL FOR F:\RMVTEST\S12\S1 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S12_ALLP1.OUT
\NPUBLIC\GRANT ALL FOR F:\RMVTEST\S12\S2 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S12_ALLP2.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\S12 /SUBDIRS > F:\RMVCMP\PUBOUT\S12_ALL.OUT
ECHO Starting S13_SAL subdirs remove...
\NPUBLIC\GRANT S R W C E M F A FOR F:\RMVTEST\S13 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S13_SALNR.OUT
\NPUBLIC\GRANT S R W C E M F A FOR F:\RMVTEST\S13\S1 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S13_SALN1.OUT
\NPUBLIC\GRANT S R W C E M F A FOR F:\RMVTEST\S13\S2 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S13_SALN2.OUT
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\S13 /SUBDIRS > F:\RMVCMP\OUT\S13_SAL.OUT
\NPUBLIC\GRANT S R W C E M F A FOR F:\RMVTEST\S13 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S13_SALPR.OUT
\NPUBLIC\GRANT S R W C E M F A FOR F:\RMVTEST\S13\S1 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S13_SALP1.OUT
\NPUBLIC\GRANT S R W C E M F A FOR F:\RMVTEST\S13\S2 TO USER NOPASSUSER > F:\RMVCMP\SETUP\S13_SALP2.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\S13 /SUBDIRS > F:\RMVCMP\PUBOUT\S13_SAL.OUT
ECHO === D20 remove recursively from subdirectories === >> F:\RMVCMP\RUN.LOG
\NPUBLIC\GRANT R F FOR F:\RMVTEST\TREE TO USER MARIO > F:\RMVCMP\SETUP\S20_ROOT.OUT
\NPUBLIC\GRANT R F FOR F:\RMVTEST\TREE\SUB1 TO USER MARIO > F:\RMVCMP\SETUP\S20_SUB1.OUT
\NPUBLIC\GRANT R F FOR F:\RMVTEST\TREE\SUB2 TO USER MARIO > F:\RMVCMP\SETUP\S20_SUB2.OUT
\NPUBLIC\REMOVE USER MARIO FROM F:\RMVTEST\TREE /SUBDIRS > F:\RMVCMP\OUT\D20_SUBDIRS.OUT
ECHO Starting E90_NOTR no trustee...
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\ERR > F:\RMVCMP\OUT\E90_NOTR.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\ERR > F:\RMVCMP\PUBOUT\E90_NOTR.OUT
ECHO Starting E91_MUSR missing user...
\NPUBLIC\REMOVE USER NO_SUCH_USER FROM F:\RMVTEST\ERR > F:\RMVCMP\OUT\E91_MUSR.OUT
\PUBLIC\REMOVE USER NO_SUCH_USER FROM F:\RMVTEST\ERR > F:\RMVCMP\PUBOUT\E91_MUSR.OUT
ECHO Starting E92_MISD missing path...
\NPUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\MISS > F:\RMVCMP\OUT\E92_MISD.OUT
\PUBLIC\REMOVE USER NOPASSUSER FROM F:\RMVTEST\MISS > F:\RMVCMP\PUBOUT\E92_MISD.OUT
ECHO Starting E93_BADD bad grammar...
\NPUBLIC\REMOVE USER FROM F:\RMVTEST\ERR > F:\RMVCMP\OUT\E93_BADD.OUT
\PUBLIC\REMOVE USER FROM F:\RMVTEST\ERR > F:\RMVCMP\PUBOUT\E93_BADD.OUT
ECHO === D21 remove from explicit file using /FILES === >> F:\RMVCMP\RUN.LOG
\NPUBLIC\GRANT R F FOR F:\RMVTEST\ONE\ONE.TXT TO USER MARIO /FILES > F:\RMVCMP\SETUP\S21_FILE.OUT
\NPUBLIC\REMOVE USER MARIO FROM F:\RMVTEST\ONE\ONE.TXT /FILES > F:\RMVCMP\OUT\D21_FILE.OUT
ECHO === Direct compare OUT vs PUBOUT === > F:\RMVCMP\COMPARE.LOG
ECHO Comparing D01_HELP >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\D01_HELP.OUT F:\RMVCMP\PUBOUT\D01_HELP.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing D02_NOAR >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\D02_NOAR.OUT F:\RMVCMP\PUBOUT\D02_NOAR.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G10_R >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G10_R.OUT F:\RMVCMP\PUBOUT\G10_R.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G11_W >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G11_W.OUT F:\RMVCMP\PUBOUT\G11_W.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G12_C >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G12_C.OUT F:\RMVCMP\PUBOUT\G12_C.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G13_E >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G13_E.OUT F:\RMVCMP\PUBOUT\G13_E.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G14_M >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G14_M.OUT F:\RMVCMP\PUBOUT\G14_M.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G15_F >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G15_F.OUT F:\RMVCMP\PUBOUT\G15_F.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G16_A >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G16_A.OUT F:\RMVCMP\PUBOUT\G16_A.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G17_S >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G17_S.OUT F:\RMVCMP\PUBOUT\G17_S.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G20_RF >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G20_RF.OUT F:\RMVCMP\PUBOUT\G20_RF.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G21_RW >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G21_RW.OUT F:\RMVCMP\PUBOUT\G21_RW.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G22_RWC >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G22_RWC.OUT F:\RMVCMP\PUBOUT\G22_RWC.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G23_RWCE >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G23_RWCE.OUT F:\RMVCMP\PUBOUT\G23_RWCE.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G24_RAL >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G24_RAL.OUT F:\RMVCMP\PUBOUT\G24_RAL.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G25_SAL >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G25_SAL.OUT F:\RMVCMP\PUBOUT\G25_SAL.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G26_ALL >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G26_ALL.OUT F:\RMVCMP\PUBOUT\G26_ALL.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G27_N >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G27_N.OUT F:\RMVCMP\PUBOUT\G27_N.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G30_RE >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G30_RE.OUT F:\RMVCMP\PUBOUT\G30_RE.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G31_RWF >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G31_RWF.OUT F:\RMVCMP\PUBOUT\G31_RWF.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G32_RCM >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G32_RCM.OUT F:\RMVCMP\PUBOUT\G32_RCM.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G33_RFA >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G33_RFA.OUT F:\RMVCMP\PUBOUT\G33_RFA.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G34_WCM >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G34_WCM.OUT F:\RMVCMP\PUBOUT\G34_WCM.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G35_EMF >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G35_EMF.OUT F:\RMVCMP\PUBOUT\G35_EMF.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G36_RMF >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G36_RMF.OUT F:\RMVCMP\PUBOUT\G36_RMF.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G37_REMA >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G37_REMA.OUT F:\RMVCMP\PUBOUT\G37_REMA.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G38_SR >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G38_SR.OUT F:\RMVCMP\PUBOUT\G38_SR.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G39_SRF >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G39_SRF.OUT F:\RMVCMP\PUBOUT\G39_SRF.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing G40_SWCM >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\G40_SWCM.OUT F:\RMVCMP\PUBOUT\G40_SWCM.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing F10_R >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\F10_R.OUT F:\RMVCMP\PUBOUT\F10_R.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing F11_RF >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\F11_RF.OUT F:\RMVCMP\PUBOUT\F11_RF.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing F12_RAL >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\F12_RAL.OUT F:\RMVCMP\PUBOUT\F12_RAL.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing F13_ALL >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\F13_ALL.OUT F:\RMVCMP\PUBOUT\F13_ALL.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing F14_N >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\F14_N.OUT F:\RMVCMP\PUBOUT\F14_N.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing F15_S >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\F15_S.OUT F:\RMVCMP\PUBOUT\F15_S.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing F16_SAL >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\F16_SAL.OUT F:\RMVCMP\PUBOUT\F16_SAL.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing S10_R >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\S10_R.OUT F:\RMVCMP\PUBOUT\S10_R.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing S11_RWC >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\S11_RWC.OUT F:\RMVCMP\PUBOUT\S11_RWC.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing S12_ALL >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\S12_ALL.OUT F:\RMVCMP\PUBOUT\S12_ALL.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing S13_SAL >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\S13_SAL.OUT F:\RMVCMP\PUBOUT\S13_SAL.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing E90_NOTR >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\E90_NOTR.OUT F:\RMVCMP\PUBOUT\E90_NOTR.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing E91_MUSR >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\E91_MUSR.OUT F:\RMVCMP\PUBOUT\E91_MUSR.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing E92_MISD >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\E92_MISD.OUT F:\RMVCMP\PUBOUT\E92_MISD.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO Comparing E93_BADD >> F:\RMVCMP\COMPARE.LOG
FC F:\RMVCMP\OUT\E93_BADD.OUT F:\RMVCMP\PUBOUT\E93_BADD.OUT >> F:\RMVCMP\COMPARE.LOG
ECHO === D22 remove from all files in directory using /FILES === >> F:\RMVCMP\RUN.LOG
\NPUBLIC\GRANT R F FOR F:\RMVTEST\FILES\A.TXT TO USER MARIO /FILES > F:\RMVCMP\SETUP\S22_A.OUT
\NPUBLIC\GRANT R F FOR F:\RMVTEST\FILES\B.TXT TO USER MARIO /FILES > F:\RMVCMP\SETUP\S22_B.OUT
\NPUBLIC\REMOVE USER MARIO FROM F:\RMVTEST\FILES /FILES > F:\RMVCMP\OUT\D22_FILES_DIR.OUT
REM --- Prepare delayed user-context readback. ---
COPY F:\test\remove\RMVC.BAT C:\RMVTMP\RMVC.BAT > NUL
IF EXIST F:\RMVC.BAT COPY F:\RMVC.BAT C:\RMVTMP\RMVC.BAT > NUL
IF EXIST \PUBLIC\DLYSTRT.EXE COPY \PUBLIC\DLYSTRT.EXE C:\RMVTMP > NUL
IF EXIST C:\RMVTMP\DLYSTRT.EXE GOTO HAVEDLY
ECHO ERROR: DLYSTRT.EXE not found. >> F:\RMVCMP\RUN.LOG
ECHO ERROR: DLYSTRT.EXE not found.
GOTO END
ECHO === D30 relative path from F:\RMVTEST === >> F:\RMVCMP\RUN.LOG
\NPUBLIC\GRANT R F FOR F:\RMVTEST\ONE TO USER MARIO > F:\RMVCMP\SETUP\S30_GRANT.OUT
CD \RMVTEST
\NPUBLIC\REMOVE USER MARIO FROM ONE > F:\RMVCMP\OUT\D30_REL_DIR.OUT
:HAVEDLY
C:
CD \RMVTMP
DLYSTRT /T:2 RMVC.BAT
F:
CD \
ECHO RMVSTA Part1 finished. Waiting for delayed NOPASSUSER readback.
GOTO END
ECHO === D90 no trustee === >> F:\RMVCMP\RUN.LOG
\NPUBLIC\REMOVE USER MARIO FROM F:\RMVTEST\EMPTY > F:\RMVCMP\OUT\D90_NO_TRUSTEE.OUT
:PART2
F:
CD \
IF NOT EXIST RMVCMP MD RMVCMP
IF NOT EXIST RMVCMP\UNOV MD RMVCMP\UNOV
IF NOT EXIST RMVCMP\UPUB MD RMVCMP\UPUB
IF NOT EXIST RMVCMP\USETUP MD RMVCMP\USETUP
ECHO === D91 missing user === >> F:\RMVCMP\RUN.LOG
\NPUBLIC\REMOVE USER NO_SUCH_USER FROM F:\RMVTEST\ONE > F:\RMVCMP\OUT\D91_MISSING_USER.OUT
IF EXIST C:\RMVTMP\UNOV\*.* COPY C:\RMVTMP\UNOV\*.* F:\RMVCMP\UNOV > NUL
IF EXIST C:\RMVTMP\UPUB\*.* COPY C:\RMVTMP\UPUB\*.* F:\RMVCMP\UPUB > NUL
IF EXIST C:\RMVTMP\USETUP\*.* COPY C:\RMVTMP\USETUP\*.* F:\RMVCMP\USETUP > NUL
IF EXIST C:\RMVTMP\HELPER.TXT COPY C:\RMVTMP\HELPER.TXT F:\RMVCMP\HELPER.TXT > NUL
IF EXIST C:\RMVTMP\ULOG1.OUT COPY C:\RMVTMP\ULOG1.OUT F:\RMVCMP\ULOG1.OUT > NUL
IF EXIST C:\RMVTMP\ULOGIN.OUT COPY C:\RMVTMP\ULOGIN.OUT F:\RMVCMP\ULOGIN.OUT > NUL
IF EXIST C:\RMVTMP\ULOG2.OUT COPY C:\RMVTMP\ULOG2.OUT F:\RMVCMP\ULOG2.OUT > NUL
IF EXIST C:\RMVTMP\ULGSUP.OUT COPY C:\RMVTMP\ULGSUP.OUT F:\RMVCMP\ULGSUP.OUT > NUL
ECHO === D92 missing path === >> F:\RMVCMP\RUN.LOG
\NPUBLIC\REMOVE USER MARIO FROM F:\RMVTEST\MISSING > F:\RMVCMP\OUT\D92_MISSING_PATH.OUT
ECHO === D93 /FILES and /SUBDIRS together === >> F:\RMVCMP\RUN.LOG
\NPUBLIC\GRANT R F FOR F:\RMVTEST\OPTBOTH TO USER MARIO > F:\RMVCMP\SETUP\S93_DIR.OUT
\NPUBLIC\GRANT R F FOR F:\RMVTEST\OPTBOTH\SUB TO USER MARIO > F:\RMVCMP\SETUP\S93_SUB.OUT
\NPUBLIC\GRANT R F FOR F:\RMVTEST\OPTBOTH\O.TXT TO USER MARIO /FILES > F:\RMVCMP\SETUP\S93_FILE.OUT
\NPUBLIC\REMOVE USER MARIO FROM F:\RMVTEST\OPTBOTH /FILES /SUBDIRS > F:\RMVCMP\OUT\D93_BOTH_OPTS.OUT
ECHO === D94 bad grammar / missing name === >> F:\RMVCMP\RUN.LOG
\NPUBLIC\REMOVE USER FROM F:\RMVTEST\ONE > F:\RMVCMP\OUT\D94_BAD_GRAMMAR.OUT
ECHO === User-context compare UNOV vs UPUB === > F:\RMVCMP\UCOMP.LOG
ECHO Comparing G10_R >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G10_R.OUT F:\RMVCMP\UPUB\G10_R.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G11_W >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G11_W.OUT F:\RMVCMP\UPUB\G11_W.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G12_C >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G12_C.OUT F:\RMVCMP\UPUB\G12_C.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G13_E >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G13_E.OUT F:\RMVCMP\UPUB\G13_E.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G14_M >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G14_M.OUT F:\RMVCMP\UPUB\G14_M.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G15_F >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G15_F.OUT F:\RMVCMP\UPUB\G15_F.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G16_A >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G16_A.OUT F:\RMVCMP\UPUB\G16_A.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G17_S >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G17_S.OUT F:\RMVCMP\UPUB\G17_S.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G20_RF >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G20_RF.OUT F:\RMVCMP\UPUB\G20_RF.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G21_RW >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G21_RW.OUT F:\RMVCMP\UPUB\G21_RW.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G22_RWC >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G22_RWC.OUT F:\RMVCMP\UPUB\G22_RWC.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G23_RWCE >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G23_RWCE.OUT F:\RMVCMP\UPUB\G23_RWCE.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G24_RAL >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G24_RAL.OUT F:\RMVCMP\UPUB\G24_RAL.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G25_SAL >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G25_SAL.OUT F:\RMVCMP\UPUB\G25_SAL.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G26_ALL >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G26_ALL.OUT F:\RMVCMP\UPUB\G26_ALL.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G27_N >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G27_N.OUT F:\RMVCMP\UPUB\G27_N.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G30_RE >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G30_RE.OUT F:\RMVCMP\UPUB\G30_RE.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G31_RWF >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G31_RWF.OUT F:\RMVCMP\UPUB\G31_RWF.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G32_RCM >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G32_RCM.OUT F:\RMVCMP\UPUB\G32_RCM.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G33_RFA >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G33_RFA.OUT F:\RMVCMP\UPUB\G33_RFA.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G34_WCM >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G34_WCM.OUT F:\RMVCMP\UPUB\G34_WCM.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G35_EMF >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G35_EMF.OUT F:\RMVCMP\UPUB\G35_EMF.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G36_RMF >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G36_RMF.OUT F:\RMVCMP\UPUB\G36_RMF.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G37_REMA >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G37_REMA.OUT F:\RMVCMP\UPUB\G37_REMA.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G38_SR >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G38_SR.OUT F:\RMVCMP\UPUB\G38_SR.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G39_SRF >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G39_SRF.OUT F:\RMVCMP\UPUB\G39_SRF.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing G40_SWCM >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\G40_SWCM.OUT F:\RMVCMP\UPUB\G40_SWCM.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing F10_R >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\F10_R.OUT F:\RMVCMP\UPUB\F10_R.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing F11_RF >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\F11_RF.OUT F:\RMVCMP\UPUB\F11_RF.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing F12_RAL >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\F12_RAL.OUT F:\RMVCMP\UPUB\F12_RAL.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing F13_ALL >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\F13_ALL.OUT F:\RMVCMP\UPUB\F13_ALL.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing F14_N >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\F14_N.OUT F:\RMVCMP\UPUB\F14_N.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing F15_S >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\F15_S.OUT F:\RMVCMP\UPUB\F15_S.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing F16_SAL >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\F16_SAL.OUT F:\RMVCMP\UPUB\F16_SAL.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing S10_R >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\S10_R.OUT F:\RMVCMP\UPUB\S10_R.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing S11_RWC >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\S11_RWC.OUT F:\RMVCMP\UPUB\S11_RWC.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing S12_ALL >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\S12_ALL.OUT F:\RMVCMP\UPUB\S12_ALL.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO Comparing S13_SAL >> F:\RMVCMP\UCOMP.LOG
FC F:\RMVCMP\UNOV\S13_SAL.OUT F:\RMVCMP\UPUB\S13_SAL.OUT >> F:\RMVCMP\UCOMP.LOG
ECHO === SUMMARY === > F:\RMVCMP\SUMMARY.TXT
ECHO RMVSTA REMOVE baseline finished. >> F:\RMVCMP\SUMMARY.TXT
ECHO. >> F:\RMVCMP\SUMMARY.TXT
ECHO Expected coverage: >> F:\RMVCMP\SUMMARY.TXT
ECHO - D10-D11 capture normal directory trustee removal syntax. >> F:\RMVCMP\SUMMARY.TXT
ECHO - D20 captures /SUBDIRS behavior with trustees on start and child dirs. >> F:\RMVCMP\SUMMARY.TXT
ECHO - D21-D22 capture /FILES behavior for explicit file and directory file set. >> F:\RMVCMP\SUMMARY.TXT
ECHO - D30 captures relative path behavior with absolute \NPUBLIC\REMOVE invocation. >> F:\RMVCMP\SUMMARY.TXT
ECHO - D90-D94 capture error and grammar cases. >> F:\RMVCMP\SUMMARY.TXT
ECHO RMVSTA REMOVE comparison finished. >> F:\RMVCMP\SUMMARY.TXT
ECHO. >> F:\RMVCMP\SUMMARY.TXT
ECHO Direct mode compares NPUBLIC REMOVE against PUBLIC REMOVE. >> F:\RMVCMP\SUMMARY.TXT
ECHO User-context mode logs in as NOPASSUSER and compares RIGHTS output after PUBLIC REMOVE. >> F:\RMVCMP\SUMMARY.TXT
ECHO Optional: RMVZIP ausfuehren. >> F:\RMVCMP\SUMMARY.TXT
ECHO RMVSTA fertig.
ECHO RMVSTA PART2 fertig.
ECHO Ergebnisse liegen in F:\RMVCMP
ECHO Optional: RMVZIP ausfuehren.
GOTO END
:NEEDPWD
ECHO ERROR: LGNTPWD ist nicht gesetzt.
ECHO Fuer den automatischen REMOVE/NOPASSUSER-Test zuerst setzen, z.B.:
ECHO SET LGNTPWD=dein-supervisor-passwort
ECHO Danach starten:
ECHO F:\RMVSTA
ECHO Es wurde kein DLYSTRT installiert und kein Test gestartet.
:END