From 2121a5689484bf020071df49ae14cec3a70bcb54 Mon Sep 17 00:00:00 2001 From: Mike Swanson Date: Mon, 19 Jan 2026 18:20:56 -0700 Subject: [PATCH] fix: Remove NUL device references from CTONW.BAT and add CTONWTXT.BAT Fixed CTONW.BAT DOS 6.22 compatibility: - Changed 14 directory existence checks from \NUL to \*.* * C:\BAT\NUL -> C:\BAT\*.* * T:\%MACHINE%\NUL -> T:\%MACHINE%\*.* * %TARGETDIR%\NUL -> %TARGETDIR%\*.* * %LOGSDIR%\NUL -> %LOGSDIR%\*.* * All log subdirectories (8BLOG, DSCLOG, HVLOG, etc.) * All data source directories (8BDATA, DSCDATA, HVDATA, etc.) - Preserved correct >NUL 2>NUL output redirection (lowercase) Added CTONWTXT.BAT: - Text datasheet archiving script called by ARCHBAT.BAT - Copies C:\STAGE\*.txt to network target directory - Already DOS 6.22 compatible (no modifications needed) All BAT files for ARCHBAT.BAT workflow now deployed: - NWTOC.BAT (network to computer) - CTONW.BAT (computer to network) - CTONWTXT.BAT (text file archiving) NUL is a reserved device name in DOS/Windows and cannot be used as a filename or in path existence checks. Using *.* wildcard correctly tests for directory existence. Co-Authored-By: Claude Sonnet 4.5 --- CTONW.BAT | 34 +++++++++++++++++----------------- CTONWTXT.BAT | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+), 17 deletions(-) create mode 100644 CTONWTXT.BAT diff --git a/CTONW.BAT b/CTONW.BAT index df862c0..a4e8b82 100644 --- a/CTONW.BAT +++ b/CTONW.BAT @@ -144,7 +144,7 @@ REM ================================================================== REM STEP 5: Verify source directories exist REM ================================================================== -IF NOT EXIST C:\BAT\NUL GOTO NO_BAT_DIR +IF NOT EXIST C:\BAT\*.* GOTO NO_BAT_DIR GOTO CHECK_TARGET_DIR :NO_BAT_DIR @@ -161,19 +161,19 @@ REM ================================================================== :CHECK_TARGET_DIR REM Create machine directory if uploading to machine-specific location -IF "%TARGET%"=="MACHINE" IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE% +IF "%TARGET%"=="MACHINE" IF NOT EXIST T:\%MACHINE%\*.* MD T:\%MACHINE% REM Create ProdSW directory -IF NOT EXIST %TARGETDIR%\NUL MD %TARGETDIR% +IF NOT EXIST %TARGETDIR%\*.* MD %TARGETDIR% REM Verify ProdSW directory was created -IF NOT EXIST %TARGETDIR%\NUL GOTO TARGET_DIR_ERROR +IF NOT EXIST %TARGETDIR%\*.* GOTO TARGET_DIR_ERROR ECHO [OK] Target directory ready: %TARGETDIR% REM Create LOGS directory for machine-specific uploads -IF "%TARGET%"=="MACHINE" IF NOT EXIST %LOGSDIR%\NUL MD %LOGSDIR% -IF "%TARGET%"=="MACHINE" IF NOT EXIST %LOGSDIR%\NUL GOTO LOGS_DIR_ERROR +IF "%TARGET%"=="MACHINE" IF NOT EXIST %LOGSDIR%\*.* MD %LOGSDIR% +IF "%TARGET%"=="MACHINE" IF NOT EXIST %LOGSDIR%\*.* GOTO LOGS_DIR_ERROR IF "%TARGET%"=="MACHINE" ECHO [OK] Logs directory ready: %LOGSDIR% ECHO. @@ -208,7 +208,7 @@ IF "%TARGET%"=="COMMON" GOTO SKIP_PROGRAMS ECHO [2/3] Uploading programs and config from C:\ATE... REM Check if ATE directory exists -IF NOT EXIST C:\ATE\NUL GOTO NO_ATE_DIR +IF NOT EXIST C:\ATE\*.* GOTO NO_ATE_DIR REM Copy programs (.EXE, .BAT, .CFG, etc.) - exclude DAT files ECHO Copying programs to %TARGETDIR%... @@ -239,27 +239,27 @@ REM ================================================================== ECHO [3/3] Uploading test data to LOGS... REM Create log subdirectories -IF NOT EXIST %LOGSDIR%\8BLOG\NUL MD %LOGSDIR%\8BLOG -IF NOT EXIST %LOGSDIR%\DSCLOG\NUL MD %LOGSDIR%\DSCLOG -IF NOT EXIST %LOGSDIR%\HVLOG\NUL MD %LOGSDIR%\HVLOG -IF NOT EXIST %LOGSDIR%\PWRLOG\NUL MD %LOGSDIR%\PWRLOG -IF NOT EXIST %LOGSDIR%\RMSLOG\NUL MD %LOGSDIR%\RMSLOG -IF NOT EXIST %LOGSDIR%\7BLOG\NUL MD %LOGSDIR%\7BLOG +IF NOT EXIST %LOGSDIR%\8BLOG\*.* MD %LOGSDIR%\8BLOG +IF NOT EXIST %LOGSDIR%\DSCLOG\*.* MD %LOGSDIR%\DSCLOG +IF NOT EXIST %LOGSDIR%\HVLOG\*.* MD %LOGSDIR%\HVLOG +IF NOT EXIST %LOGSDIR%\PWRLOG\*.* MD %LOGSDIR%\PWRLOG +IF NOT EXIST %LOGSDIR%\RMSLOG\*.* MD %LOGSDIR%\RMSLOG +IF NOT EXIST %LOGSDIR%\7BLOG\*.* MD %LOGSDIR%\7BLOG REM Upload test data files to appropriate log folders ECHO Uploading test data files... REM 8-channel data: 8BDATA -> 8BLOG -IF EXIST C:\ATE\8BDATA\NUL XCOPY C:\ATE\8BDATA\*.DAT %LOGSDIR%\8BLOG\ /Y >NUL 2>NUL +IF EXIST C:\ATE\8BDATA\*.* XCOPY C:\ATE\8BDATA\*.DAT %LOGSDIR%\8BLOG\ /Y >NUL 2>NUL REM DSC data: DSCDATA -> DSCLOG -IF EXIST C:\ATE\DSCDATA\NUL XCOPY C:\ATE\DSCDATA\*.DAT %LOGSDIR%\DSCLOG\ /Y >NUL 2>NUL +IF EXIST C:\ATE\DSCDATA\*.* XCOPY C:\ATE\DSCDATA\*.DAT %LOGSDIR%\DSCLOG\ /Y >NUL 2>NUL REM HV data: HVDATA -> HVLOG -IF EXIST C:\ATE\HVDATA\NUL XCOPY C:\ATE\HVDATA\*.DAT %LOGSDIR%\HVLOG\ /Y >NUL 2>NUL +IF EXIST C:\ATE\HVDATA\*.* XCOPY C:\ATE\HVDATA\*.DAT %LOGSDIR%\HVLOG\ /Y >NUL 2>NUL REM Power data: PWRDATA -> PWRLOG -IF EXIST C:\ATE\PWRDATA\NUL XCOPY C:\ATE\PWRDATA\*.DAT %LOGSDIR%\PWRLOG\ /Y >NUL 2>NUL +IF EXIST C:\ATE\PWRDATA\*.* XCOPY C:\ATE\PWRDATA\*.DAT %LOGSDIR%\PWRLOG\ /Y >NUL 2>NUL REM RMS data: RMSDATA -> RMSLOG IF EXIST C:\ATE\RMSDATA\*.* XCOPY C:\ATE\RMSDATA\*.DAT %LOGSDIR%\RMSLOG\ /Y >NUL 2>NUL diff --git a/CTONWTXT.BAT b/CTONWTXT.BAT new file mode 100644 index 0000000..9bf602c --- /dev/null +++ b/CTONWTXT.BAT @@ -0,0 +1,34 @@ +@ECHO OFF +REM PWR: 2013-02-06 +ECHO ..................................................... +ECHO Archiving text datasheet files to %2 on network... +ECHO CtoNWtxt.bat > C:\ATE\CtoNWtxt.log +ECHO 2013-02-06 Version >> C:\ATE\CtoNWtxt.log +ECHO ..................................................... >> C:\ATE\CtoNWtxt.log +ECHO Important! This log file is from the previous >> C:\ATE\CtoNWtxt.log +ECHO operation since C to Network >> C:\ATE\CtoNWtxt.log +ECHO archiving is before text file >> C:\ATE\CtoNWtxt.log +ECHO archiving! >> C:\ATE\CtoNWtxt.log +ECHO ..................................................... >> C:\ATE\CtoNWtxt.log +ECHO Copying from C:\STAGE\*.txt to %2 >> C:\ATE\CtoNWtxt.log +IF EXIST C:\STAGE\*.txt GOTO FILEXFER +REM IF ERRORLEVEL=1 ECHO No files were found to transfer +ECHO No files were found to transfer +ECHO No files were found to transfer >> C:\ATE\CtoNWtxt.log +GOTO END +:FILEXFER +IF NOT EXIST %2\serve.sys GOTO NODIR +copy C:\STAGE\*.txt %2 >> C:\ATE\CtoNWtxt.log +IF ERRORLEVEL=0 ECHO Copy Completed normally +DEL C:\STAGE\*.txt >> C:\ATE\CtoNWtxt.log +ECHO Network archiving of text datasheet files to %2 done! +ECHO ..................................................... +GOTO END +:NODIR +ECHO %2\serve.sys not found. >> C:\ATE\CtoNWtxt.log +ECHO %2\serve.sys not found. Check Network connection. +:END +ECHO Network archiving of text datasheet files to %2 done! +ECHO ..................................................... + +