sync: Auto-sync from Mikes-MacBook-Air.local at 2026-01-22 19:10:48
Synced files: - DOS batch files updated (ATESYNC, CTONWTXT, DEPLOY, NWTOC, etc.) - New debug batch files (ATESYNCD, CTONWD, NWTOCD, DIAGBK) - Removed obsolete debug files (ATESYNC-DEBUG, CTONW-DEBUG, NWTOC-DEBUG) - New deployment scripts (deploy-to-nas.sh, validate-dos.sh) - DOS coding agent documentation updated Machine: Mikes-MacBook-Air.local Timestamp: 2026-01-22 19:10:48 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -284,6 +284,73 @@ IF NOT EXIST dest\file.txt GOTO ERROR
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
### RULE 19: DOS Line Endings (CR/LF) Required
|
||||||
|
**Status:** CONFIRMED - LF-only files cause parse errors
|
||||||
|
|
||||||
|
DOS 6.22 requires CR/LF (Carriage Return + Line Feed) line endings:
|
||||||
|
- CR = 0x0D (hex) = \r
|
||||||
|
- LF = 0x0A (hex) = \n
|
||||||
|
- DOS needs: CR+LF (0x0D 0x0A)
|
||||||
|
- Unix uses: LF only (0x0A) - WILL NOT WORK
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# [BAD] Unix line endings (LF only)
|
||||||
|
# File created on Mac/Linux without conversion
|
||||||
|
|
||||||
|
# [GOOD] Convert to DOS line endings before deployment
|
||||||
|
# On Mac/Linux:
|
||||||
|
unix2dos FILENAME.BAT
|
||||||
|
# Or with sed:
|
||||||
|
sed -i 's/$/\r/' FILENAME.BAT
|
||||||
|
# Or with Perl:
|
||||||
|
perl -pi -e 's/\n/\r\n/' FILENAME.BAT
|
||||||
|
```
|
||||||
|
|
||||||
|
**Symptoms of wrong line endings:**
|
||||||
|
- Commands run together on same line
|
||||||
|
- "Bad command or file name" on valid commands
|
||||||
|
- Script appears to do nothing
|
||||||
|
- Unexpected behavior at label jumps
|
||||||
|
|
||||||
|
**CRITICAL:** Always convert files to DOS line endings (CR/LF) before copying to DOS machines.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### RULE 20: No Trailing Spaces in SET Statements
|
||||||
|
**Status:** CONFIRMED - Causes "Too many parameters" errors
|
||||||
|
|
||||||
|
Trailing spaces in SET commands become part of the variable value:
|
||||||
|
|
||||||
|
```batch
|
||||||
|
REM [BAD] Trailing space after value
|
||||||
|
SET MACHINE=TS-3R
|
||||||
|
REM %MACHINE% = "TS-3R " (with trailing space!)
|
||||||
|
REM T:\%MACHINE%\LOGS becomes T:\TS-3R \LOGS - FAILS!
|
||||||
|
|
||||||
|
REM [GOOD] No trailing space
|
||||||
|
SET MACHINE=TS-3R
|
||||||
|
REM %MACHINE% = "TS-3R" (no space)
|
||||||
|
REM T:\%MACHINE%\LOGS becomes T:\TS-3R\LOGS - CORRECT
|
||||||
|
```
|
||||||
|
|
||||||
|
**Symptoms:**
|
||||||
|
- "Too many parameters" on MD, COPY, XCOPY commands using the variable
|
||||||
|
- Paths appear correct in ECHO but fail in actual commands
|
||||||
|
- Mysterious failures that work when paths are hardcoded
|
||||||
|
|
||||||
|
**Prevention:**
|
||||||
|
```bash
|
||||||
|
# Check for trailing spaces in SET statements
|
||||||
|
grep -E "^SET [A-Z]+=.* $" *.BAT
|
||||||
|
|
||||||
|
# Strip trailing whitespace from all lines before deployment
|
||||||
|
sed -i 's/[[:space:]]*$//' *.BAT
|
||||||
|
```
|
||||||
|
|
||||||
|
**CRITICAL:** Always strip trailing whitespace from batch files before deployment.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Validation Checklist
|
## Validation Checklist
|
||||||
|
|
||||||
Before deploying ANY DOS batch file, verify:
|
Before deploying ANY DOS batch file, verify:
|
||||||
@@ -303,6 +370,8 @@ Before deploying ANY DOS batch file, verify:
|
|||||||
- [ ] Using COPY instead of XCOPY where possible
|
- [ ] Using COPY instead of XCOPY where possible
|
||||||
- [ ] Environment variables quoted in comparisons
|
- [ ] Environment variables quoted in comparisons
|
||||||
- [ ] Clean up SET variables at end
|
- [ ] Clean up SET variables at end
|
||||||
|
- [ ] **CR/LF line endings (DOS format, not Unix LF)**
|
||||||
|
- [ ] **No trailing spaces in SET statements or any lines**
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -432,17 +501,22 @@ FOR %%V IN (set) DO command - Loop (simple use only)
|
|||||||
|
|
||||||
| Error Message | Likely Cause | Fix |
|
| Error Message | Likely Cause | Fix |
|
||||||
|---------------|--------------|-----|
|
|---------------|--------------|-----|
|
||||||
| Bad command or file name | CALL :label, %DATE%, %TIME%, square brackets | Remove NT+ syntax |
|
| Bad command or file name | CALL :label, %DATE%, %TIME%, square brackets, wrong line endings | Remove NT+ syntax, convert to CR/LF |
|
||||||
| Too many parameters | 2>NUL, square brackets in ECHO | Remove stderr redirect, remove brackets |
|
| Too many parameters | 2>NUL, square brackets in ECHO | Remove stderr redirect, remove brackets |
|
||||||
| Invalid switch | XCOPY /I, XCOPY /D | Use COPY or remove flag |
|
| Invalid switch | XCOPY /I, XCOPY /D | Use COPY or remove flag |
|
||||||
| Invalid number of parameters | XCOPY /D without date | Add date or use COPY |
|
| Invalid number of parameters | XCOPY /D without date | Add date or use COPY |
|
||||||
| Syntax error | Various NT+ constructs | Review all rules |
|
| Syntax error | Various NT+ constructs | Review all rules |
|
||||||
|
| Commands run together | Unix LF line endings instead of DOS CR/LF | Convert with unix2dos |
|
||||||
|
| Script does nothing | Wrong line endings causing parse failure | Convert with unix2dos |
|
||||||
|
| Too many parameters on paths | Trailing space in SET variable value | Strip trailing whitespace: `sed -i 's/[[:space:]]*$//'` |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Version History
|
## Version History
|
||||||
|
|
||||||
- 2026-01-21: Initial creation with 18 rules
|
- 2026-01-21: Initial creation with 18 rules
|
||||||
|
- 2026-01-21: Added Rule 19 - CR/LF line endings requirement
|
||||||
|
- 2026-01-21: Added Rule 20 - No trailing spaces in SET statements
|
||||||
- Rules confirmed through testing on actual DOS 6.22 machines
|
- Rules confirmed through testing on actual DOS 6.22 machines
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -1,87 +1,87 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM ATESYNC.BAT - ATE Sync Orchestrator (ARCHBAT equivalent)
|
REM ATESYNC.BAT - ATE Sync Orchestrator (ARCHBAT equivalent)
|
||||||
REM Version: 1.1 - DOS 6.22 compatible
|
REM Version: 1.1 - DOS 6.22 compatible
|
||||||
REM Last modified: 2026-01-21
|
REM Last modified: 2026-01-21
|
||||||
REM
|
REM
|
||||||
REM Called from AUTOEXEC.BAT after network is up
|
REM Called from AUTOEXEC.BAT after network is up
|
||||||
REM Usage: ATESYNC TS-27
|
REM Usage: ATESYNC TS-27
|
||||||
REM or: ATESYNC (uses MACHINE environment variable)
|
REM or: ATESYNC (uses MACHINE environment variable)
|
||||||
|
|
||||||
REM Get machine name from parameter or environment
|
REM Get machine name from parameter or environment
|
||||||
IF NOT "%1"=="" SET MACHINE=%1
|
IF NOT "%1"=="" SET MACHINE=%1
|
||||||
IF "%MACHINE%"=="" GOTO NO_MACHINE
|
IF "%MACHINE%"=="" GOTO NO_MACHINE
|
||||||
|
|
||||||
REM Verify T: drive is available
|
REM Verify T: drive is available
|
||||||
IF NOT EXIST T:\*.* GOTO NO_DRIVE
|
IF NOT EXIST T:\*.* GOTO NO_DRIVE
|
||||||
|
|
||||||
REM Verify machine folder exists on network
|
REM Verify machine folder exists on network
|
||||||
IF NOT EXIST T:\%MACHINE%\*.* GOTO CREATE_MACHINE
|
IF NOT EXIST T:\%MACHINE%\*.* GOTO CREATE_MACHINE
|
||||||
|
|
||||||
:START_SYNC
|
:START_SYNC
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ************************************************************
|
ECHO ************************************************************
|
||||||
ECHO ATESYNC: %MACHINE%
|
ECHO ATESYNC: %MACHINE%
|
||||||
ECHO ************************************************************
|
ECHO ************************************************************
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Step 1: Upload test results FIRST (before downloading updates)
|
REM Step 1: Upload test results FIRST (before downloading updates)
|
||||||
ECHO Sending test results to network...
|
ECHO Sending test results to network...
|
||||||
CALL CTONW.BAT
|
CALL CTONW.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Step 2: Download software updates
|
REM Step 2: Download software updates
|
||||||
ECHO Getting updates from network...
|
ECHO Getting updates from network...
|
||||||
CALL NWTOC.BAT
|
CALL NWTOC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
ECHO ************************************************************
|
ECHO ************************************************************
|
||||||
ECHO ATESYNC Complete: %MACHINE%
|
ECHO ATESYNC Complete: %MACHINE%
|
||||||
ECHO ************************************************************
|
ECHO ************************************************************
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:CREATE_MACHINE
|
:CREATE_MACHINE
|
||||||
ECHO Creating machine folder T:\%MACHINE%
|
ECHO Creating machine folder T:\%MACHINE%
|
||||||
MD T:\%MACHINE%
|
MD T:\%MACHINE%
|
||||||
IF NOT EXIST T:\%MACHINE%\*.* GOTO MACHINE_ERROR
|
IF NOT EXIST T:\%MACHINE%\*.* GOTO MACHINE_ERROR
|
||||||
MD T:\%MACHINE%\LOGS
|
MD T:\%MACHINE%\LOGS
|
||||||
MD T:\%MACHINE%\LOGS\5BLOG
|
MD T:\%MACHINE%\LOGS\5BLOG
|
||||||
MD T:\%MACHINE%\LOGS\7BLOG
|
MD T:\%MACHINE%\LOGS\7BLOG
|
||||||
MD T:\%MACHINE%\LOGS\8BLOG
|
MD T:\%MACHINE%\LOGS\8BLOG
|
||||||
MD T:\%MACHINE%\LOGS\DSCLOG
|
MD T:\%MACHINE%\LOGS\DSCLOG
|
||||||
MD T:\%MACHINE%\LOGS\HVLOG
|
MD T:\%MACHINE%\LOGS\HVLOG
|
||||||
MD T:\%MACHINE%\LOGS\PWRLOG
|
MD T:\%MACHINE%\LOGS\PWRLOG
|
||||||
MD T:\%MACHINE%\LOGS\SCTLOG
|
MD T:\%MACHINE%\LOGS\SCTLOG
|
||||||
MD T:\%MACHINE%\LOGS\VASLOG
|
MD T:\%MACHINE%\LOGS\VASLOG
|
||||||
MD T:\%MACHINE%\ProdSW
|
MD T:\%MACHINE%\ProdSW
|
||||||
MD T:\%MACHINE%\Reports
|
MD T:\%MACHINE%\Reports
|
||||||
ECHO Machine folder created
|
ECHO Machine folder created
|
||||||
GOTO START_SYNC
|
GOTO START_SYNC
|
||||||
|
|
||||||
:NO_MACHINE
|
:NO_MACHINE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ************************************************************
|
ECHO ************************************************************
|
||||||
ECHO ERROR: MACHINE not set
|
ECHO ERROR: MACHINE not set
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Usage: ATESYNC TS-27
|
ECHO Usage: ATESYNC TS-27
|
||||||
ECHO or: SET MACHINE=TS-27
|
ECHO or: SET MACHINE=TS-27
|
||||||
ECHO ATESYNC
|
ECHO ATESYNC
|
||||||
ECHO ************************************************************
|
ECHO ************************************************************
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:NO_DRIVE
|
:NO_DRIVE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ERROR: T: drive not available
|
ECHO ERROR: T: drive not available
|
||||||
ECHO Run STARTNET.BAT first
|
ECHO Run STARTNET.BAT first
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:MACHINE_ERROR
|
:MACHINE_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ERROR: Could not create T:\%MACHINE%
|
ECHO ERROR: Could not create T:\%MACHINE%
|
||||||
ECHO Check network permissions
|
ECHO Check network permissions
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:END
|
:END
|
||||||
|
|||||||
@@ -1,129 +1,130 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM ATESYNC-DEBUG.BAT - ATE Sync with diagnostic pauses
|
REM ATESYNCD.BAT - ATE Sync with diagnostic pauses (8.3 name)
|
||||||
REM Version: 1.0 - Debug version for recording boot process
|
REM Version: 1.1 - Debug version for recording boot process
|
||||||
REM Last modified: 2026-01-21
|
REM Last modified: 2026-01-21
|
||||||
REM
|
REM
|
||||||
REM This version pauses at each step for video recording
|
REM This version pauses at each step for video recording
|
||||||
|
REM Usage: ATESYNCD TS-3R
|
||||||
IF NOT "%1"=="" SET MACHINE=%1
|
|
||||||
IF "%MACHINE%"=="" GOTO NO_MACHINE
|
IF NOT "%1"=="" SET MACHINE=%1
|
||||||
|
IF "%MACHINE%"=="" GOTO NO_MACHINE
|
||||||
ECHO.
|
|
||||||
ECHO ==============================================================
|
ECHO.
|
||||||
ECHO DEBUG MODE: ATESYNC
|
ECHO ==============================================================
|
||||||
ECHO ==============================================================
|
ECHO DEBUG MODE: ATESYNCD
|
||||||
ECHO.
|
ECHO ==============================================================
|
||||||
ECHO STEP 0: Machine name set
|
ECHO.
|
||||||
ECHO MACHINE = %MACHINE%
|
ECHO STEP 0: Machine name set
|
||||||
ECHO.
|
ECHO MACHINE = %MACHINE%
|
||||||
ECHO Press any key to continue to Step 1...
|
ECHO.
|
||||||
PAUSE
|
ECHO Press any key to continue to Step 1...
|
||||||
|
PAUSE
|
||||||
REM Verify T: drive
|
|
||||||
ECHO.
|
REM Verify T: drive
|
||||||
ECHO ==============================================================
|
ECHO.
|
||||||
ECHO STEP 1: Checking T: drive
|
ECHO ==============================================================
|
||||||
ECHO ==============================================================
|
ECHO STEP 1: Checking T: drive
|
||||||
IF NOT EXIST T:\*.* GOTO NO_DRIVE
|
ECHO ==============================================================
|
||||||
ECHO T: drive is accessible
|
IF NOT EXIST T:\*.* GOTO NO_DRIVE
|
||||||
ECHO.
|
ECHO T: drive is accessible
|
||||||
ECHO Press any key to continue to Step 2...
|
ECHO.
|
||||||
PAUSE
|
ECHO Press any key to continue to Step 2...
|
||||||
|
PAUSE
|
||||||
REM Check machine folder
|
|
||||||
ECHO.
|
REM Check machine folder
|
||||||
ECHO ==============================================================
|
ECHO.
|
||||||
ECHO STEP 2: Checking machine folder T:\%MACHINE%
|
ECHO ==============================================================
|
||||||
ECHO ==============================================================
|
ECHO STEP 2: Checking machine folder T:\%MACHINE%
|
||||||
IF NOT EXIST T:\%MACHINE%\*.* GOTO CREATE_MACHINE
|
ECHO ==============================================================
|
||||||
ECHO Machine folder exists
|
IF NOT EXIST T:\%MACHINE%\*.* GOTO CREATE_MACHINE
|
||||||
ECHO.
|
ECHO Machine folder exists
|
||||||
ECHO Press any key to continue to Step 3...
|
ECHO.
|
||||||
PAUSE
|
ECHO Press any key to continue to Step 3...
|
||||||
GOTO START_SYNC
|
PAUSE
|
||||||
|
GOTO START_SYNC
|
||||||
:CREATE_MACHINE
|
|
||||||
ECHO Machine folder not found - creating...
|
:CREATE_MACHINE
|
||||||
MD T:\%MACHINE%
|
ECHO Machine folder not found - creating...
|
||||||
IF NOT EXIST T:\%MACHINE%\*.* GOTO MACHINE_ERROR
|
MD T:\%MACHINE%
|
||||||
MD T:\%MACHINE%\LOGS
|
IF NOT EXIST T:\%MACHINE%\*.* GOTO MACHINE_ERROR
|
||||||
MD T:\%MACHINE%\LOGS\5BLOG
|
MD T:\%MACHINE%\LOGS
|
||||||
MD T:\%MACHINE%\LOGS\7BLOG
|
MD T:\%MACHINE%\LOGS\5BLOG
|
||||||
MD T:\%MACHINE%\LOGS\8BLOG
|
MD T:\%MACHINE%\LOGS\7BLOG
|
||||||
MD T:\%MACHINE%\LOGS\DSCLOG
|
MD T:\%MACHINE%\LOGS\8BLOG
|
||||||
MD T:\%MACHINE%\LOGS\HVLOG
|
MD T:\%MACHINE%\LOGS\DSCLOG
|
||||||
MD T:\%MACHINE%\LOGS\PWRLOG
|
MD T:\%MACHINE%\LOGS\HVLOG
|
||||||
MD T:\%MACHINE%\LOGS\SCTLOG
|
MD T:\%MACHINE%\LOGS\PWRLOG
|
||||||
MD T:\%MACHINE%\LOGS\VASLOG
|
MD T:\%MACHINE%\LOGS\SCTLOG
|
||||||
MD T:\%MACHINE%\ProdSW
|
MD T:\%MACHINE%\LOGS\VASLOG
|
||||||
MD T:\%MACHINE%\Reports
|
MD T:\%MACHINE%\ProdSW
|
||||||
ECHO Machine folder structure created
|
MD T:\%MACHINE%\Reports
|
||||||
ECHO.
|
ECHO Machine folder structure created
|
||||||
ECHO Press any key to continue to Step 3...
|
ECHO.
|
||||||
PAUSE
|
ECHO Press any key to continue to Step 3...
|
||||||
|
PAUSE
|
||||||
:START_SYNC
|
|
||||||
ECHO.
|
:START_SYNC
|
||||||
ECHO ==============================================================
|
ECHO.
|
||||||
ECHO STEP 3: Starting CTONW (Upload test results)
|
ECHO ==============================================================
|
||||||
ECHO ==============================================================
|
ECHO STEP 3: Starting CTONWD (Upload test results)
|
||||||
ECHO About to call: CTONW-DEBUG.BAT
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO About to call: CTONWD.BAT
|
||||||
ECHO Press any key to run CTONW-DEBUG...
|
ECHO.
|
||||||
PAUSE
|
ECHO Press any key to run CTONWD...
|
||||||
CALL CTONW-DEBUG.BAT
|
PAUSE
|
||||||
ECHO.
|
CALL CTONWD.BAT
|
||||||
ECHO CTONW-DEBUG completed
|
ECHO.
|
||||||
ECHO.
|
ECHO CTONWD completed
|
||||||
ECHO Press any key to continue to Step 4...
|
ECHO.
|
||||||
PAUSE
|
ECHO Press any key to continue to Step 4...
|
||||||
|
PAUSE
|
||||||
ECHO.
|
|
||||||
ECHO ==============================================================
|
ECHO.
|
||||||
ECHO STEP 4: Starting NWTOC (Download updates)
|
ECHO ==============================================================
|
||||||
ECHO ==============================================================
|
ECHO STEP 4: Starting NWTOCD (Download updates)
|
||||||
ECHO About to call: NWTOC-DEBUG.BAT
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO About to call: NWTOCD.BAT
|
||||||
ECHO Press any key to run NWTOC-DEBUG...
|
ECHO.
|
||||||
PAUSE
|
ECHO Press any key to run NWTOCD...
|
||||||
CALL NWTOC-DEBUG.BAT
|
PAUSE
|
||||||
ECHO.
|
CALL NWTOCD.BAT
|
||||||
ECHO NWTOC-DEBUG completed
|
ECHO.
|
||||||
ECHO.
|
ECHO NWTOCD completed
|
||||||
ECHO Press any key to finish...
|
ECHO.
|
||||||
PAUSE
|
ECHO Press any key to finish...
|
||||||
|
PAUSE
|
||||||
ECHO.
|
|
||||||
ECHO ==============================================================
|
ECHO.
|
||||||
ECHO ATESYNC-DEBUG Complete: %MACHINE%
|
ECHO ==============================================================
|
||||||
ECHO ==============================================================
|
ECHO ATESYNCD Complete: %MACHINE%
|
||||||
ECHO.
|
ECHO ==============================================================
|
||||||
GOTO END
|
ECHO.
|
||||||
|
GOTO END
|
||||||
:NO_MACHINE
|
|
||||||
ECHO.
|
:NO_MACHINE
|
||||||
ECHO ==============================================================
|
ECHO.
|
||||||
ECHO ERROR at STEP 0: MACHINE not set
|
ECHO ==============================================================
|
||||||
ECHO ==============================================================
|
ECHO ERROR at STEP 0: MACHINE not set
|
||||||
ECHO.
|
ECHO ==============================================================
|
||||||
ECHO Usage: ATESYNC-DEBUG TS-27
|
ECHO.
|
||||||
PAUSE
|
ECHO Usage: ATESYNCD TS-3R
|
||||||
GOTO END
|
PAUSE
|
||||||
|
GOTO END
|
||||||
:NO_DRIVE
|
|
||||||
ECHO.
|
:NO_DRIVE
|
||||||
ECHO ==============================================================
|
ECHO.
|
||||||
ECHO ERROR at STEP 1: T: drive not available
|
ECHO ==============================================================
|
||||||
ECHO ==============================================================
|
ECHO ERROR at STEP 1: T: drive not available
|
||||||
PAUSE
|
ECHO ==============================================================
|
||||||
GOTO END
|
PAUSE
|
||||||
|
GOTO END
|
||||||
:MACHINE_ERROR
|
|
||||||
ECHO.
|
:MACHINE_ERROR
|
||||||
ECHO ==============================================================
|
ECHO.
|
||||||
ECHO ERROR at STEP 2: Could not create machine folder
|
ECHO ==============================================================
|
||||||
ECHO ==============================================================
|
ECHO ERROR at STEP 2: Could not create machine folder
|
||||||
PAUSE
|
ECHO ==============================================================
|
||||||
GOTO END
|
PAUSE
|
||||||
|
GOTO END
|
||||||
:END
|
|
||||||
|
:END
|
||||||
@@ -1,81 +1,81 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM Dataforth Test Machine Startup - DOS 6.22
|
REM Dataforth Test Machine Startup - DOS 6.22
|
||||||
REM Automatically runs after CONFIG.SYS during boot
|
REM Automatically runs after CONFIG.SYS during boot
|
||||||
REM Version: 3.0 - Auto-update system integrated
|
REM Version: 3.0 - Auto-update system integrated
|
||||||
REM Last modified: 2026-01-19
|
REM Last modified: 2026-01-19
|
||||||
|
|
||||||
REM Set machine identity (configured by DEPLOY.BAT)
|
REM Set machine identity (configured by DEPLOY.BAT)
|
||||||
SET MACHINE=TS-4R
|
SET MACHINE=TS-4R
|
||||||
|
|
||||||
REM Set DOS search path for executables
|
REM Set DOS search path for executables
|
||||||
SET PATH=C:\DOS;C:\NET;C:\BAT;C:\BATCH;C:\
|
SET PATH=C:\DOS;C:\NET;C:\BAT;C:\BATCH;C:\
|
||||||
|
|
||||||
REM Set command prompt to show current directory
|
REM Set command prompt to show current directory
|
||||||
PROMPT $P$G
|
PROMPT $P$G
|
||||||
|
|
||||||
REM Set temporary file directory
|
REM Set temporary file directory
|
||||||
SET TEMP=C:\TEMP
|
SET TEMP=C:\TEMP
|
||||||
SET TMP=C:\TEMP
|
SET TMP=C:\TEMP
|
||||||
|
|
||||||
CLS
|
CLS
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Dataforth Test Machine: %MACHINE%
|
ECHO Dataforth Test Machine: %MACHINE%
|
||||||
ECHO DOS 6.22 with Automatic Update System
|
ECHO DOS 6.22 with Automatic Update System
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Create required directories if they don't exist
|
REM Create required directories if they don't exist
|
||||||
IF NOT EXIST C:\TEMP\*.* MD C:\TEMP
|
IF NOT EXIST C:\TEMP\*.* MD C:\TEMP
|
||||||
IF NOT EXIST C:\BAT\*.* MD C:\BAT
|
IF NOT EXIST C:\BAT\*.* MD C:\BAT
|
||||||
IF NOT EXIST C:\BATCH\*.* MD C:\BATCH
|
IF NOT EXIST C:\BATCH\*.* MD C:\BATCH
|
||||||
|
|
||||||
ECHO Starting network client...
|
ECHO Starting network client...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Start network client and map T: and X: drives
|
REM Start network client and map T: and X: drives
|
||||||
IF EXIST C:\STARTNET.BAT CALL C:\STARTNET.BAT
|
IF EXIST C:\STARTNET.BAT CALL C:\STARTNET.BAT
|
||||||
|
|
||||||
REM Verify T: drive is accessible
|
REM Verify T: drive is accessible
|
||||||
IF NOT EXIST T:\*.* GOTO NET_FAILED
|
IF NOT EXIST T:\*.* GOTO NET_FAILED
|
||||||
|
|
||||||
ECHO [OK] Network started
|
ECHO (OK) Network started
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Network Drives:
|
ECHO Network Drives:
|
||||||
ECHO T: = \\D2TESTNAS\test
|
ECHO T: = \\D2TESTNAS\test
|
||||||
ECHO X: = \\D2TESTNAS\datasheets
|
ECHO X: = \\D2TESTNAS\datasheets
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Download latest software updates from network
|
REM Download latest software updates from network
|
||||||
ECHO Checking for software updates...
|
ECHO Checking for software updates...
|
||||||
IF EXIST C:\BAT\NWTOC.BAT CALL C:\BAT\NWTOC.BAT
|
IF EXIST C:\BAT\NWTOC.BAT CALL C:\BAT\NWTOC.BAT
|
||||||
|
|
||||||
REM Upload test data to network for database import
|
REM Upload test data to network for database import
|
||||||
ECHO Uploading test data to network...
|
ECHO Uploading test data to network...
|
||||||
IF EXIST C:\BAT\CTONW.BAT CALL C:\BAT\CTONW.BAT
|
IF EXIST C:\BAT\CTONW.BAT CALL C:\BAT\CTONW.BAT
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO System Ready
|
ECHO System Ready
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Available Commands:
|
ECHO Available Commands:
|
||||||
ECHO UPDATE - Full system backup to T:\%MACHINE%\BACKUP
|
ECHO UPDATE - Full system backup to T:\%MACHINE%\BACKUP
|
||||||
ECHO CHECKUPD - Check for available updates
|
ECHO CHECKUPD - Check for available updates
|
||||||
ECHO CTONW - Manual upload to network
|
ECHO CTONW - Manual upload to network
|
||||||
ECHO NWTOC - Manual download from network
|
ECHO NWTOC - Manual download from network
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:NET_FAILED
|
:NET_FAILED
|
||||||
ECHO [ERROR] Network drive mapping failed
|
ECHO ERROR: Network drive mapping failed
|
||||||
ECHO T: drive not accessible
|
ECHO T: drive not accessible
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO To start network manually:
|
ECHO To start network manually:
|
||||||
ECHO C:\STARTNET.BAT
|
ECHO C:\STARTNET.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Updates and backups will not work until network is available.
|
ECHO Updates and backups will not work until network is available.
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
:END
|
:END
|
||||||
|
|||||||
@@ -1,135 +1,135 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM CTONW-DEBUG.BAT - Upload with diagnostic pauses
|
REM CTONWD.BAT - Upload with diagnostic pauses (8.3 name)
|
||||||
REM Version: 1.0 - Debug version for recording
|
REM Version: 1.1 - Debug version for recording
|
||||||
REM Last modified: 2026-01-21
|
REM Last modified: 2026-01-21
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO DEBUG: CTONW - Computer to Network Upload
|
ECHO DEBUG: CTONW - Computer to Network Upload
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
IF "%MACHINE%"=="" GOTO NO_MACHINE
|
IF "%MACHINE%"=="" GOTO NO_MACHINE
|
||||||
|
|
||||||
ECHO CTONW Step 0: Verifying prerequisites
|
ECHO CTONW Step 0: Verifying prerequisites
|
||||||
ECHO MACHINE = %MACHINE%
|
ECHO MACHINE = %MACHINE%
|
||||||
IF NOT EXIST T:\*.* GOTO NO_DRIVE
|
IF NOT EXIST T:\*.* GOTO NO_DRIVE
|
||||||
ECHO T: drive OK
|
ECHO T: drive OK
|
||||||
IF NOT EXIST T:\%MACHINE%\*.* GOTO NO_FOLDER
|
IF NOT EXIST T:\%MACHINE%\*.* GOTO NO_FOLDER
|
||||||
ECHO T:\%MACHINE% OK
|
ECHO T:\%MACHINE% OK
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
IF NOT EXIST C:\ATE\*.* GOTO SKIP_ATE
|
IF NOT EXIST C:\ATE\*.* GOTO SKIP_ATE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW Step 1: Creating LOGS directories on T:\%MACHINE%\LOGS
|
ECHO CTONW Step 1: Creating LOGS directories on T:\%MACHINE%\LOGS
|
||||||
IF NOT EXIST T:\%MACHINE%\LOGS\*.* MD T:\%MACHINE%\LOGS
|
IF NOT EXIST T:\%MACHINE%\LOGS\*.* MD T:\%MACHINE%\LOGS
|
||||||
IF NOT EXIST T:\%MACHINE%\LOGS\5BLOG\*.* MD T:\%MACHINE%\LOGS\5BLOG
|
IF NOT EXIST T:\%MACHINE%\LOGS\5BLOG\*.* MD T:\%MACHINE%\LOGS\5BLOG
|
||||||
IF NOT EXIST T:\%MACHINE%\LOGS\7BLOG\*.* MD T:\%MACHINE%\LOGS\7BLOG
|
IF NOT EXIST T:\%MACHINE%\LOGS\7BLOG\*.* MD T:\%MACHINE%\LOGS\7BLOG
|
||||||
IF NOT EXIST T:\%MACHINE%\LOGS\8BLOG\*.* MD T:\%MACHINE%\LOGS\8BLOG
|
IF NOT EXIST T:\%MACHINE%\LOGS\8BLOG\*.* MD T:\%MACHINE%\LOGS\8BLOG
|
||||||
IF NOT EXIST T:\%MACHINE%\LOGS\DSCLOG\*.* MD T:\%MACHINE%\LOGS\DSCLOG
|
IF NOT EXIST T:\%MACHINE%\LOGS\DSCLOG\*.* MD T:\%MACHINE%\LOGS\DSCLOG
|
||||||
IF NOT EXIST T:\%MACHINE%\LOGS\HVLOG\*.* MD T:\%MACHINE%\LOGS\HVLOG
|
IF NOT EXIST T:\%MACHINE%\LOGS\HVLOG\*.* MD T:\%MACHINE%\LOGS\HVLOG
|
||||||
IF NOT EXIST T:\%MACHINE%\LOGS\PWRLOG\*.* MD T:\%MACHINE%\LOGS\PWRLOG
|
IF NOT EXIST T:\%MACHINE%\LOGS\PWRLOG\*.* MD T:\%MACHINE%\LOGS\PWRLOG
|
||||||
IF NOT EXIST T:\%MACHINE%\LOGS\SCTLOG\*.* MD T:\%MACHINE%\LOGS\SCTLOG
|
IF NOT EXIST T:\%MACHINE%\LOGS\SCTLOG\*.* MD T:\%MACHINE%\LOGS\SCTLOG
|
||||||
IF NOT EXIST T:\%MACHINE%\LOGS\VASLOG\*.* MD T:\%MACHINE%\LOGS\VASLOG
|
IF NOT EXIST T:\%MACHINE%\LOGS\VASLOG\*.* MD T:\%MACHINE%\LOGS\VASLOG
|
||||||
ECHO Directories ready
|
ECHO Directories ready
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW Step 2: Uploading 5BLOG
|
ECHO CTONW Step 2: Uploading 5BLOG
|
||||||
IF EXIST C:\ATE\5BLOG\*.DAT ECHO Found files in C:\ATE\5BLOG
|
IF EXIST C:\ATE\5BLOG\*.DAT ECHO Found files in C:\ATE\5BLOG
|
||||||
IF EXIST C:\ATE\5BLOG\*.DAT COPY C:\ATE\5BLOG\*.DAT T:\%MACHINE%\LOGS\5BLOG
|
IF EXIST C:\ATE\5BLOG\*.DAT COPY C:\ATE\5BLOG\*.DAT T:\%MACHINE%\LOGS\5BLOG
|
||||||
IF NOT EXIST C:\ATE\5BLOG\*.DAT ECHO No files in C:\ATE\5BLOG
|
IF NOT EXIST C:\ATE\5BLOG\*.DAT ECHO No files in C:\ATE\5BLOG
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW Step 3: Uploading 7BLOG
|
ECHO CTONW Step 3: Uploading 7BLOG
|
||||||
IF EXIST C:\ATE\7BLOG\*.DAT ECHO Found DAT files in C:\ATE\7BLOG
|
IF EXIST C:\ATE\7BLOG\*.DAT ECHO Found DAT files in C:\ATE\7BLOG
|
||||||
IF EXIST C:\ATE\7BLOG\*.DAT COPY C:\ATE\7BLOG\*.DAT T:\%MACHINE%\LOGS\7BLOG
|
IF EXIST C:\ATE\7BLOG\*.DAT COPY C:\ATE\7BLOG\*.DAT T:\%MACHINE%\LOGS\7BLOG
|
||||||
IF EXIST C:\ATE\7BLOG\*.SHT ECHO Found SHT files in C:\ATE\7BLOG
|
IF EXIST C:\ATE\7BLOG\*.SHT ECHO Found SHT files in C:\ATE\7BLOG
|
||||||
IF EXIST C:\ATE\7BLOG\*.SHT COPY C:\ATE\7BLOG\*.SHT T:\%MACHINE%\LOGS\7BLOG
|
IF EXIST C:\ATE\7BLOG\*.SHT COPY C:\ATE\7BLOG\*.SHT T:\%MACHINE%\LOGS\7BLOG
|
||||||
IF NOT EXIST C:\ATE\7BLOG\*.* ECHO No files in C:\ATE\7BLOG
|
IF NOT EXIST C:\ATE\7BLOG\*.* ECHO No files in C:\ATE\7BLOG
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW Step 4: Uploading 8BLOG
|
ECHO CTONW Step 4: Uploading 8BLOG
|
||||||
IF EXIST C:\ATE\8BLOG\*.DAT ECHO Found files in C:\ATE\8BLOG
|
IF EXIST C:\ATE\8BLOG\*.DAT ECHO Found files in C:\ATE\8BLOG
|
||||||
IF EXIST C:\ATE\8BLOG\*.DAT COPY C:\ATE\8BLOG\*.DAT T:\%MACHINE%\LOGS\8BLOG
|
IF EXIST C:\ATE\8BLOG\*.DAT COPY C:\ATE\8BLOG\*.DAT T:\%MACHINE%\LOGS\8BLOG
|
||||||
IF NOT EXIST C:\ATE\8BLOG\*.DAT ECHO No files in C:\ATE\8BLOG
|
IF NOT EXIST C:\ATE\8BLOG\*.DAT ECHO No files in C:\ATE\8BLOG
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW Step 5: Uploading DSCLOG
|
ECHO CTONW Step 5: Uploading DSCLOG
|
||||||
IF EXIST C:\ATE\DSCLOG\*.DAT ECHO Found files in C:\ATE\DSCLOG
|
IF EXIST C:\ATE\DSCLOG\*.DAT ECHO Found files in C:\ATE\DSCLOG
|
||||||
IF EXIST C:\ATE\DSCLOG\*.DAT COPY C:\ATE\DSCLOG\*.DAT T:\%MACHINE%\LOGS\DSCLOG
|
IF EXIST C:\ATE\DSCLOG\*.DAT COPY C:\ATE\DSCLOG\*.DAT T:\%MACHINE%\LOGS\DSCLOG
|
||||||
IF NOT EXIST C:\ATE\DSCLOG\*.DAT ECHO No files in C:\ATE\DSCLOG
|
IF NOT EXIST C:\ATE\DSCLOG\*.DAT ECHO No files in C:\ATE\DSCLOG
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW Step 6: Uploading HVLOG
|
ECHO CTONW Step 6: Uploading HVLOG
|
||||||
IF EXIST C:\ATE\HVLOG\*.DAT ECHO Found files in C:\ATE\HVLOG
|
IF EXIST C:\ATE\HVLOG\*.DAT ECHO Found files in C:\ATE\HVLOG
|
||||||
IF EXIST C:\ATE\HVLOG\*.DAT COPY C:\ATE\HVLOG\*.DAT T:\%MACHINE%\LOGS\HVLOG
|
IF EXIST C:\ATE\HVLOG\*.DAT COPY C:\ATE\HVLOG\*.DAT T:\%MACHINE%\LOGS\HVLOG
|
||||||
IF NOT EXIST C:\ATE\HVLOG\*.DAT ECHO No files in C:\ATE\HVLOG
|
IF NOT EXIST C:\ATE\HVLOG\*.DAT ECHO No files in C:\ATE\HVLOG
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW Step 7: Uploading PWRLOG
|
ECHO CTONW Step 7: Uploading PWRLOG
|
||||||
IF EXIST C:\ATE\PWRLOG\*.DAT ECHO Found files in C:\ATE\PWRLOG
|
IF EXIST C:\ATE\PWRLOG\*.DAT ECHO Found files in C:\ATE\PWRLOG
|
||||||
IF EXIST C:\ATE\PWRLOG\*.DAT COPY C:\ATE\PWRLOG\*.DAT T:\%MACHINE%\LOGS\PWRLOG
|
IF EXIST C:\ATE\PWRLOG\*.DAT COPY C:\ATE\PWRLOG\*.DAT T:\%MACHINE%\LOGS\PWRLOG
|
||||||
IF NOT EXIST C:\ATE\PWRLOG\*.DAT ECHO No files in C:\ATE\PWRLOG
|
IF NOT EXIST C:\ATE\PWRLOG\*.DAT ECHO No files in C:\ATE\PWRLOG
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW Step 8: Uploading SCTLOG
|
ECHO CTONW Step 8: Uploading SCTLOG
|
||||||
IF EXIST C:\ATE\SCTLOG\*.DAT ECHO Found files in C:\ATE\SCTLOG
|
IF EXIST C:\ATE\SCTLOG\*.DAT ECHO Found files in C:\ATE\SCTLOG
|
||||||
IF EXIST C:\ATE\SCTLOG\*.DAT COPY C:\ATE\SCTLOG\*.DAT T:\%MACHINE%\LOGS\SCTLOG
|
IF EXIST C:\ATE\SCTLOG\*.DAT COPY C:\ATE\SCTLOG\*.DAT T:\%MACHINE%\LOGS\SCTLOG
|
||||||
IF NOT EXIST C:\ATE\SCTLOG\*.DAT ECHO No files in C:\ATE\SCTLOG
|
IF NOT EXIST C:\ATE\SCTLOG\*.DAT ECHO No files in C:\ATE\SCTLOG
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW Step 9: Uploading VASLOG
|
ECHO CTONW Step 9: Uploading VASLOG
|
||||||
IF EXIST C:\ATE\VASLOG\*.DAT ECHO Found files in C:\ATE\VASLOG
|
IF EXIST C:\ATE\VASLOG\*.DAT ECHO Found files in C:\ATE\VASLOG
|
||||||
IF EXIST C:\ATE\VASLOG\*.DAT COPY C:\ATE\VASLOG\*.DAT T:\%MACHINE%\LOGS\VASLOG
|
IF EXIST C:\ATE\VASLOG\*.DAT COPY C:\ATE\VASLOG\*.DAT T:\%MACHINE%\LOGS\VASLOG
|
||||||
IF NOT EXIST C:\ATE\VASLOG\*.DAT ECHO No files in C:\ATE\VASLOG
|
IF NOT EXIST C:\ATE\VASLOG\*.DAT ECHO No files in C:\ATE\VASLOG
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW Step 10: Uploading Reports
|
ECHO CTONW Step 10: Uploading Reports
|
||||||
IF NOT EXIST T:\%MACHINE%\Reports\*.* MD T:\%MACHINE%\Reports
|
IF NOT EXIST T:\%MACHINE%\Reports\*.* MD T:\%MACHINE%\Reports
|
||||||
IF EXIST C:\Reports\*.TXT ECHO Found TXT files in C:\Reports
|
IF EXIST C:\Reports\*.TXT ECHO Found TXT files in C:\Reports
|
||||||
IF EXIST C:\Reports\*.TXT COPY C:\Reports\*.TXT T:\%MACHINE%\Reports
|
IF EXIST C:\Reports\*.TXT COPY C:\Reports\*.TXT T:\%MACHINE%\Reports
|
||||||
IF NOT EXIST C:\Reports\*.TXT ECHO No TXT files in C:\Reports
|
IF NOT EXIST C:\Reports\*.TXT ECHO No TXT files in C:\Reports
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO CTONW-DEBUG Complete
|
ECHO CTONW-DEBUG Complete
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:SKIP_ATE
|
:SKIP_ATE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW: No C:\ATE directory found - skipping upload
|
ECHO CTONW: No C:\ATE directory found - skipping upload
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:NO_MACHINE
|
:NO_MACHINE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW ERROR: MACHINE variable not set
|
ECHO CTONW ERROR: MACHINE variable not set
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:NO_DRIVE
|
:NO_DRIVE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW ERROR: T: drive not available
|
ECHO CTONW ERROR: T: drive not available
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:NO_FOLDER
|
:NO_FOLDER
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO CTONW ERROR: T:\%MACHINE% folder not found
|
ECHO CTONW ERROR: T:\%MACHINE% folder not found
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:END
|
:END
|
||||||
@@ -1,34 +1,34 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM PWR: 2013-02-06
|
REM PWR: 2013-02-06
|
||||||
ECHO .....................................................
|
ECHO .....................................................
|
||||||
ECHO Archiving text datasheet files to %2 on network...
|
ECHO Archiving text datasheet files to %2 on network...
|
||||||
ECHO CtoNWtxt.bat > C:\ATE\CtoNWtxt.log
|
ECHO CtoNWtxt.bat > C:\ATE\CtoNWtxt.log
|
||||||
ECHO 2013-02-06 Version >> C:\ATE\CtoNWtxt.log
|
ECHO 2013-02-06 Version >> C:\ATE\CtoNWtxt.log
|
||||||
ECHO ..................................................... >> C:\ATE\CtoNWtxt.log
|
ECHO ..................................................... >> C:\ATE\CtoNWtxt.log
|
||||||
ECHO Important! This log file is from the previous >> 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 operation since C to Network >> C:\ATE\CtoNWtxt.log
|
||||||
ECHO archiving is before text file >> C:\ATE\CtoNWtxt.log
|
ECHO archiving is before text file >> C:\ATE\CtoNWtxt.log
|
||||||
ECHO archiving! >> C:\ATE\CtoNWtxt.log
|
ECHO archiving! >> C:\ATE\CtoNWtxt.log
|
||||||
ECHO ..................................................... >> C:\ATE\CtoNWtxt.log
|
ECHO ..................................................... >> C:\ATE\CtoNWtxt.log
|
||||||
ECHO Copying from C:\STAGE\*.txt to %2 >> C:\ATE\CtoNWtxt.log
|
ECHO Copying from C:\STAGE\*.txt to %2 >> C:\ATE\CtoNWtxt.log
|
||||||
IF EXIST C:\STAGE\*.txt GOTO FILEXFER
|
IF EXIST C:\STAGE\*.txt GOTO FILEXFER
|
||||||
REM IF ERRORLEVEL=1 ECHO No files were found to transfer
|
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
|
||||||
ECHO No files were found to transfer >> C:\ATE\CtoNWtxt.log
|
ECHO No files were found to transfer >> C:\ATE\CtoNWtxt.log
|
||||||
GOTO END
|
GOTO END
|
||||||
:FILEXFER
|
:FILEXFER
|
||||||
IF NOT EXIST %2\serve.sys GOTO NODIR
|
IF NOT EXIST %2\serve.sys GOTO NODIR
|
||||||
copy C:\STAGE\*.txt %2 >> C:\ATE\CtoNWtxt.log
|
copy C:\STAGE\*.txt %2 >> C:\ATE\CtoNWtxt.log
|
||||||
IF ERRORLEVEL=0 ECHO Copy Completed normally
|
IF ERRORLEVEL=0 ECHO Copy Completed normally
|
||||||
DEL C:\STAGE\*.txt >> C:\ATE\CtoNWtxt.log
|
DEL C:\STAGE\*.txt >> C:\ATE\CtoNWtxt.log
|
||||||
ECHO Network archiving of text datasheet files to %2 done!
|
ECHO Network archiving of text datasheet files to %2 done!
|
||||||
ECHO .....................................................
|
ECHO .....................................................
|
||||||
GOTO END
|
GOTO END
|
||||||
:NODIR
|
:NODIR
|
||||||
ECHO %2\serve.sys not found. >> C:\ATE\CtoNWtxt.log
|
ECHO %2\serve.sys not found. >> C:\ATE\CtoNWtxt.log
|
||||||
ECHO %2\serve.sys not found. Check Network connection.
|
ECHO %2\serve.sys not found. Check Network connection.
|
||||||
:END
|
:END
|
||||||
ECHO Network archiving of text datasheet files to %2 done!
|
ECHO Network archiving of text datasheet files to %2 done!
|
||||||
ECHO .....................................................
|
ECHO .....................................................
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ REM Create directories (ignore errors with >NUL)
|
|||||||
MD C:\BAT >NUL
|
MD C:\BAT >NUL
|
||||||
MD T:\%MACHINE% >NUL
|
MD T:\%MACHINE% >NUL
|
||||||
|
|
||||||
ECHO [1/2] Copying batch files to C:\BAT...
|
ECHO (1/2) Copying batch files to C:\BAT...
|
||||||
COPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT >NUL
|
COPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT >NUL
|
||||||
COPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT >NUL
|
COPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT >NUL
|
||||||
COPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT >NUL
|
COPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT >NUL
|
||||||
@@ -36,7 +36,7 @@ COPY T:\COMMON\ProdSW\REBOOT.BAT C:\BAT >NUL
|
|||||||
ECHO Batch files installed
|
ECHO Batch files installed
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
ECHO [2/2] Installing AUTOEXEC.BAT...
|
ECHO (2/2) Installing AUTOEXEC.BAT...
|
||||||
REM Create AUTOEXEC.BAT with machine name
|
REM Create AUTOEXEC.BAT with machine name
|
||||||
ECHO @ECHO OFF > C:\AUTOEXEC.BAT
|
ECHO @ECHO OFF > C:\AUTOEXEC.BAT
|
||||||
ECHO REM Dataforth Test Machine - DOS 6.22 >> C:\AUTOEXEC.BAT
|
ECHO REM Dataforth Test Machine - DOS 6.22 >> C:\AUTOEXEC.BAT
|
||||||
@@ -56,7 +56,7 @@ ECHO IF EXIST C:\BAT\NWTOC.BAT CALL C:\BAT\NWTOC.BAT >> C:\AUTOEXEC.BAT
|
|||||||
ECHO IF EXIST C:\BAT\CTONW.BAT CALL C:\BAT\CTONW.BAT >> C:\AUTOEXEC.BAT
|
ECHO IF EXIST C:\BAT\CTONW.BAT CALL C:\BAT\CTONW.BAT >> C:\AUTOEXEC.BAT
|
||||||
ECHO GOTO READY >> C:\AUTOEXEC.BAT
|
ECHO GOTO READY >> C:\AUTOEXEC.BAT
|
||||||
ECHO :NONET >> C:\AUTOEXEC.BAT
|
ECHO :NONET >> C:\AUTOEXEC.BAT
|
||||||
ECHO ECHO [ERROR] Network not available >> C:\AUTOEXEC.BAT
|
ECHO ECHO ERROR: Network not available >> C:\AUTOEXEC.BAT
|
||||||
ECHO :READY >> C:\AUTOEXEC.BAT
|
ECHO :READY >> C:\AUTOEXEC.BAT
|
||||||
ECHO ECHO. >> C:\AUTOEXEC.BAT
|
ECHO ECHO. >> C:\AUTOEXEC.BAT
|
||||||
ECHO ECHO System Ready >> C:\AUTOEXEC.BAT
|
ECHO ECHO System Ready >> C:\AUTOEXEC.BAT
|
||||||
@@ -75,7 +75,7 @@ GOTO END
|
|||||||
|
|
||||||
:NO_MACHINE
|
:NO_MACHINE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Machine name not provided
|
ECHO ERROR: Machine name not provided
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Usage: DEPLOY.BAT machine-name
|
ECHO Usage: DEPLOY.BAT machine-name
|
||||||
ECHO Example: DEPLOY.BAT TS-4R
|
ECHO Example: DEPLOY.BAT TS-4R
|
||||||
|
|||||||
@@ -1,345 +1,345 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM DEPLOY.BAT - One-time deployment script for DOS Update System
|
REM DEPLOY.BAT - One-time deployment script for DOS Update System
|
||||||
REM
|
REM
|
||||||
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
|
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
|
||||||
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
|
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
|
||||||
REM
|
REM
|
||||||
REM What this does:
|
REM What this does:
|
||||||
REM 1. Backs up current AUTOEXEC.BAT
|
REM 1. Backs up current AUTOEXEC.BAT
|
||||||
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
|
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
|
||||||
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
|
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
|
||||||
REM 4. Copies update batch files to C:\BAT\
|
REM 4. Copies update batch files to C:\BAT\
|
||||||
REM 5. Runs initial NWTOC to download all updates
|
REM 5. Runs initial NWTOC to download all updates
|
||||||
REM
|
REM
|
||||||
REM Version: 1.0 - DOS 6.22 compatible
|
REM Version: 1.0 - DOS 6.22 compatible
|
||||||
REM Last modified: 2026-01-19
|
REM Last modified: 2026-01-19
|
||||||
|
|
||||||
CLS
|
CLS
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO DOS Update System - One-Time Deployment
|
ECHO DOS Update System - One-Time Deployment
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO This script will install the new update system on this machine.
|
ECHO This script will install the new update system on this machine.
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO What will be installed:
|
ECHO What will be installed:
|
||||||
ECHO - NWTOC.BAT (Download updates from network)
|
ECHO - NWTOC.BAT (Download updates from network)
|
||||||
ECHO - CTONW.BAT (Upload changes to network)
|
ECHO - CTONW.BAT (Upload changes to network)
|
||||||
ECHO - UPDATE.BAT (Full system backup)
|
ECHO - UPDATE.BAT (Full system backup)
|
||||||
ECHO - STAGE.BAT (System file staging)
|
ECHO - STAGE.BAT (System file staging)
|
||||||
ECHO - REBOOT.BAT (Apply updates on reboot)
|
ECHO - REBOOT.BAT (Apply updates on reboot)
|
||||||
ECHO - CHECKUPD.BAT (Check for updates)
|
ECHO - CHECKUPD.BAT (Check for updates)
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to continue...
|
PAUSE Press any key to continue...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 1: Verify T: drive is accessible
|
REM STEP 1: Verify T: drive is accessible
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO [STEP 1/5] Checking network drive...
|
ECHO Step 1 of 5: Checking network drive...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
T: 2>NUL
|
T: 2>NUL
|
||||||
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
|
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
|
||||||
|
|
||||||
C:
|
C:
|
||||||
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
|
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
|
||||||
|
|
||||||
ECHO [OK] T: drive is accessible
|
ECHO (OK) T: drive is accessible
|
||||||
ECHO T: = \\D2TESTNAS\test
|
ECHO T: = \\D2TESTNAS\test
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO CHECK_DEPLOY_FILES
|
GOTO CHECK_DEPLOY_FILES
|
||||||
|
|
||||||
:NO_T_DRIVE
|
:NO_T_DRIVE
|
||||||
C:
|
C:
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] T: drive not available
|
ECHO ERROR: T: drive not available
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
|
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Run network startup first:
|
ECHO Run network startup first:
|
||||||
ECHO C:\NET\STARTNET.BAT
|
ECHO C:\NET\STARTNET.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Or map manually:
|
ECHO Or map manually:
|
||||||
ECHO NET USE T: \\D2TESTNAS\test /YES
|
ECHO NET USE T: \\D2TESTNAS\test /YES
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Then run DEPLOY.BAT again.
|
ECHO Then run DEPLOY.BAT again.
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 2: Verify deployment files exist on network
|
REM STEP 2: Verify deployment files exist on network
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:CHECK_DEPLOY_FILES
|
:CHECK_DEPLOY_FILES
|
||||||
ECHO [STEP 2/5] Verifying deployment files...
|
ECHO Step 2 of 5: Verifying deployment files...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
|
||||||
|
|
||||||
ECHO [OK] All deployment files found on network
|
ECHO (OK) All deployment files found on network
|
||||||
ECHO Location: T:\COMMON\ProdSW\
|
ECHO Location: T:\COMMON\ProdSW\
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO GET_MACHINE_NAME
|
GOTO GET_MACHINE_NAME
|
||||||
|
|
||||||
:MISSING_FILES
|
:MISSING_FILES
|
||||||
ECHO [ERROR] Deployment files not found on network
|
ECHO ERROR: Deployment files not found on network
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Expected location: T:\COMMON\ProdSW\
|
ECHO Expected location: T:\COMMON\ProdSW\
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Files needed:
|
ECHO Files needed:
|
||||||
ECHO - NWTOC.BAT
|
ECHO - NWTOC.BAT
|
||||||
ECHO - CTONW.BAT
|
ECHO - CTONW.BAT
|
||||||
ECHO - UPDATE.BAT
|
ECHO - UPDATE.BAT
|
||||||
ECHO - STAGE.BAT
|
ECHO - STAGE.BAT
|
||||||
ECHO - CHECKUPD.BAT
|
ECHO - CHECKUPD.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Contact system administrator.
|
ECHO Contact system administrator.
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 3: Get machine name from user
|
REM STEP 3: Get machine name from user
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:GET_MACHINE_NAME
|
:GET_MACHINE_NAME
|
||||||
ECHO [STEP 3/5] Configure machine name...
|
ECHO Step 3 of 5: Configure machine name...
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
|
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Machine name must match the folder on T: drive.
|
ECHO Machine name must match the folder on T: drive.
|
||||||
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
|
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
|
||||||
ECHO.
|
ECHO.
|
||||||
SET /P MACHINE=Machine name:
|
SET /P MACHINE=Machine name:
|
||||||
|
|
||||||
REM Validate machine name was entered
|
REM Validate machine name was entered
|
||||||
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
|
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [OK] Machine name: %MACHINE%
|
ECHO (OK) Machine name: %MACHINE%
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Verify machine folder exists on network
|
REM Verify machine folder exists on network
|
||||||
ECHO Checking for T:\%MACHINE%\ folder...
|
ECHO Checking for T:\%MACHINE%\ folder...
|
||||||
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
|
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
|
||||||
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
|
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
|
||||||
|
|
||||||
ECHO [OK] Machine folder ready: T:\%MACHINE%\
|
ECHO (OK) Machine folder ready: T:\%MACHINE%\
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO BACKUP_AUTOEXEC
|
GOTO BACKUP_AUTOEXEC
|
||||||
|
|
||||||
:MACHINE_NAME_EMPTY
|
:MACHINE_NAME_EMPTY
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Machine name cannot be empty
|
ECHO ERROR: Machine name cannot be empty
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO GET_MACHINE_NAME
|
GOTO GET_MACHINE_NAME
|
||||||
|
|
||||||
:MACHINE_FOLDER_ERROR
|
:MACHINE_FOLDER_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not create machine folder on network
|
ECHO ERROR: Could not create machine folder on network
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - T: drive is writable
|
ECHO - T: drive is writable
|
||||||
ECHO - Network connection is stable
|
ECHO - Network connection is stable
|
||||||
ECHO - Permissions to create directories
|
ECHO - Permissions to create directories
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
|
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:BACKUP_AUTOEXEC
|
:BACKUP_AUTOEXEC
|
||||||
ECHO [STEP 4/5] Installing update system files...
|
ECHO Step 4 of 5: Installing update system files...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Backup current AUTOEXEC.BAT
|
REM Backup current AUTOEXEC.BAT
|
||||||
IF EXIST C:\AUTOEXEC.BAT (
|
IF EXIST C:\AUTOEXEC.BAT (
|
||||||
ECHO Backing up AUTOEXEC.BAT...
|
ECHO Backing up AUTOEXEC.BAT...
|
||||||
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
|
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
|
||||||
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
|
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
|
||||||
ECHO [OK] Backup created: C:\AUTOEXEC.SAV
|
ECHO (OK) Backup created: C:\AUTOEXEC.SAV
|
||||||
) ELSE (
|
) ELSE (
|
||||||
ECHO [WARNING] No existing AUTOEXEC.BAT found
|
ECHO WARNING: No existing AUTOEXEC.BAT found
|
||||||
)
|
)
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Create C:\BAT directory if it doesn't exist
|
REM Create C:\BAT directory if it doesn't exist
|
||||||
IF NOT EXIST C:\BAT\NUL MD C:\BAT
|
IF NOT EXIST C:\BAT\NUL MD C:\BAT
|
||||||
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
|
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
|
||||||
|
|
||||||
ECHO Copying update system files to C:\BAT\...
|
ECHO Copying update system files to C:\BAT\...
|
||||||
|
|
||||||
REM Copy batch files from network to local machine
|
REM Copy batch files from network to local machine
|
||||||
XCOPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] NWTOC.BAT
|
ECHO (OK) NWTOC.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] CTONW.BAT
|
ECHO (OK) CTONW.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] UPDATE.BAT
|
ECHO (OK) UPDATE.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\STAGE.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\STAGE.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] STAGE.BAT
|
ECHO (OK) STAGE.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] CHECKUPD.BAT
|
ECHO (OK) CHECKUPD.BAT
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [OK] All update system files installed
|
ECHO (OK) All update system files installed
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO UPDATE_AUTOEXEC
|
GOTO UPDATE_AUTOEXEC
|
||||||
|
|
||||||
:BACKUP_ERROR
|
:BACKUP_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not backup AUTOEXEC.BAT
|
ECHO ERROR: Could not backup AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Continue anyway? (Y/N)
|
ECHO Continue anyway? (Y/N)
|
||||||
CHOICE /C:YN /N
|
CHOICE /C:YN /N
|
||||||
IF ERRORLEVEL 2 GOTO END
|
IF ERRORLEVEL 2 GOTO END
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO UPDATE_AUTOEXEC
|
GOTO UPDATE_AUTOEXEC
|
||||||
|
|
||||||
:BAT_DIR_ERROR
|
:BAT_DIR_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not create C:\BAT directory
|
ECHO ERROR: Could not create C:\BAT directory
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:COPY_ERROR
|
:COPY_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Failed to copy files from network
|
ECHO ERROR: Failed to copy files from network
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - T: drive is accessible
|
ECHO - T: drive is accessible
|
||||||
ECHO - C: drive has free space
|
ECHO - C: drive has free space
|
||||||
ECHO - No file locks on C:\BAT\
|
ECHO - No file locks on C:\BAT\
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
|
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:UPDATE_AUTOEXEC
|
:UPDATE_AUTOEXEC
|
||||||
ECHO [STEP 5/5] Updating AUTOEXEC.BAT...
|
ECHO Step 5 of 5: Updating AUTOEXEC.BAT...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
|
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
|
||||||
IF EXIST C:\AUTOEXEC.BAT (
|
IF EXIST C:\AUTOEXEC.BAT (
|
||||||
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
|
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
|
||||||
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
|
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
|
||||||
)
|
)
|
||||||
|
|
||||||
REM Append MACHINE variable to AUTOEXEC.BAT
|
REM Append MACHINE variable to AUTOEXEC.BAT
|
||||||
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
|
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
|
||||||
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
|
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
|
||||||
|
|
||||||
ECHO [OK] Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
|
ECHO (OK) Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO DEPLOYMENT_COMPLETE
|
GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
:MACHINE_EXISTS
|
:MACHINE_EXISTS
|
||||||
ECHO [WARNING] MACHINE variable already exists in AUTOEXEC.BAT
|
ECHO WARNING: MACHINE variable already exists in AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Current AUTOEXEC.BAT contains:
|
ECHO Current AUTOEXEC.BAT contains:
|
||||||
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
|
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
|
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
|
||||||
CHOICE /C:YN /N
|
CHOICE /C:YN /N
|
||||||
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
|
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Manual edit required:
|
ECHO Manual edit required:
|
||||||
ECHO 1. Edit C:\AUTOEXEC.BAT
|
ECHO 1. Edit C:\AUTOEXEC.BAT
|
||||||
ECHO 2. Find line: SET MACHINE=...
|
ECHO 2. Find line: SET MACHINE=...
|
||||||
ECHO 3. Change to: SET MACHINE=%MACHINE%
|
ECHO 3. Change to: SET MACHINE=%MACHINE%
|
||||||
ECHO 4. Save and reboot
|
ECHO 4. Save and reboot
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to continue...
|
PAUSE Press any key to continue...
|
||||||
GOTO DEPLOYMENT_COMPLETE
|
GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
:AUTOEXEC_ERROR
|
:AUTOEXEC_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not update AUTOEXEC.BAT
|
ECHO ERROR: Could not update AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
|
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
|
||||||
ECHO SET MACHINE=%MACHINE%
|
ECHO SET MACHINE=%MACHINE%
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to continue...
|
PAUSE Press any key to continue...
|
||||||
GOTO DEPLOYMENT_COMPLETE
|
GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM DEPLOYMENT COMPLETE
|
REM DEPLOYMENT COMPLETE
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:DEPLOYMENT_COMPLETE
|
:DEPLOYMENT_COMPLETE
|
||||||
CLS
|
CLS
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Deployment Complete!
|
ECHO Deployment Complete!
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO The DOS Update System has been installed on this machine.
|
ECHO The DOS Update System has been installed on this machine.
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Machine name: %MACHINE%
|
ECHO Machine name: %MACHINE%
|
||||||
ECHO Backup location: T:\%MACHINE%\BACKUP\
|
ECHO Backup location: T:\%MACHINE%\BACKUP\
|
||||||
ECHO Update location: T:\COMMON\ProdSW\
|
ECHO Update location: T:\COMMON\ProdSW\
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Available Commands:
|
ECHO Available Commands:
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC - Download updates from network
|
ECHO NWTOC - Download updates from network
|
||||||
ECHO CTONW - Upload local changes to network
|
ECHO CTONW - Upload local changes to network
|
||||||
ECHO UPDATE - Backup entire C: drive to network
|
ECHO UPDATE - Backup entire C: drive to network
|
||||||
ECHO CHECKUPD - Check for available updates
|
ECHO CHECKUPD - Check for available updates
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Next Steps:
|
ECHO Next Steps:
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO 1. REBOOT this machine to activate MACHINE variable
|
ECHO 1. REBOOT this machine to activate MACHINE variable
|
||||||
ECHO Press Ctrl+Alt+Del to reboot
|
ECHO Press Ctrl+Alt+Del to reboot
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO 2. After reboot, run NWTOC to download all updates:
|
ECHO 2. After reboot, run NWTOC to download all updates:
|
||||||
ECHO C:\BAT\NWTOC
|
ECHO C:\BAT\NWTOC
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO 3. Create initial backup:
|
ECHO 3. Create initial backup:
|
||||||
ECHO C:\BAT\UPDATE
|
ECHO C:\BAT\UPDATE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
|
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Create deployment log
|
REM Create deployment log
|
||||||
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
|
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
|
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
|
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
|
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
|
||||||
|
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM CLEANUP AND EXIT
|
REM CLEANUP AND EXIT
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:END
|
:END
|
||||||
REM Clean up environment variables
|
REM Clean up environment variables
|
||||||
SET MACHINE=
|
SET MACHINE=
|
||||||
|
|||||||
@@ -1,351 +1,351 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM DEPLOY.BAT - One-time deployment script for DOS Update System
|
REM DEPLOY.BAT - One-time deployment script for DOS Update System
|
||||||
REM
|
REM
|
||||||
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
|
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
|
||||||
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
|
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
|
||||||
REM
|
REM
|
||||||
REM What this does:
|
REM What this does:
|
||||||
REM 1. Backs up current AUTOEXEC.BAT
|
REM 1. Backs up current AUTOEXEC.BAT
|
||||||
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
|
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
|
||||||
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
|
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
|
||||||
REM 4. Copies update batch files to C:\BAT\
|
REM 4. Copies update batch files to C:\BAT\
|
||||||
REM 5. Runs initial NWTOC to download all updates
|
REM 5. Runs initial NWTOC to download all updates
|
||||||
REM
|
REM
|
||||||
REM Version: 1.0 - DOS 6.22 compatible
|
REM Version: 1.0 - DOS 6.22 compatible
|
||||||
REM Last modified: 2026-01-19
|
REM Last modified: 2026-01-19
|
||||||
|
|
||||||
CLS
|
CLS
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO DOS Update System - One-Time Deployment
|
ECHO DOS Update System - One-Time Deployment
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO This script will install the new update system on this machine.
|
ECHO This script will install the new update system on this machine.
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO What will be installed:
|
ECHO What will be installed:
|
||||||
ECHO - NWTOC.BAT (Download updates from network)
|
ECHO - NWTOC.BAT (Download updates from network)
|
||||||
ECHO - CTONW.BAT (Upload changes to network)
|
ECHO - CTONW.BAT (Upload changes to network)
|
||||||
ECHO - UPDATE.BAT (Full system backup)
|
ECHO - UPDATE.BAT (Full system backup)
|
||||||
ECHO - STAGE.BAT (System file staging)
|
ECHO - STAGE.BAT (System file staging)
|
||||||
ECHO - REBOOT.BAT (Apply updates on reboot)
|
ECHO - REBOOT.BAT (Apply updates on reboot)
|
||||||
ECHO - CHECKUPD.BAT (Check for updates)
|
ECHO - CHECKUPD.BAT (Check for updates)
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to continue...
|
PAUSE Press any key to continue...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 1: Verify T: drive is accessible
|
REM STEP 1: Verify T: drive is accessible
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO [STEP 1/5] Checking network drive...
|
ECHO Step 1 of 5: Checking network drive...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
T: 2>NUL
|
T: 2>NUL
|
||||||
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
|
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
|
||||||
|
|
||||||
C:
|
C:
|
||||||
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
|
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
|
||||||
|
|
||||||
ECHO [OK] T: drive is accessible
|
ECHO (OK) T: drive is accessible
|
||||||
ECHO T: = \\D2TESTNAS\test
|
ECHO T: = \\D2TESTNAS\test
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO CHECK_DEPLOY_FILES
|
GOTO CHECK_DEPLOY_FILES
|
||||||
|
|
||||||
:NO_T_DRIVE
|
:NO_T_DRIVE
|
||||||
C:
|
C:
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] T: drive not available
|
ECHO ERROR: T: drive not available
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
|
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Run network startup first:
|
ECHO Run network startup first:
|
||||||
ECHO C:\NET\STARTNET.BAT
|
ECHO C:\NET\STARTNET.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Or map manually:
|
ECHO Or map manually:
|
||||||
ECHO NET USE T: \\D2TESTNAS\test /YES
|
ECHO NET USE T: \\D2TESTNAS\test /YES
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Then run DEPLOY.BAT again.
|
ECHO Then run DEPLOY.BAT again.
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 2: Verify deployment files exist on network
|
REM STEP 2: Verify deployment files exist on network
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:CHECK_DEPLOY_FILES
|
:CHECK_DEPLOY_FILES
|
||||||
ECHO [STEP 2/5] Verifying deployment files...
|
ECHO Step 2 of 5: Verifying deployment files...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
|
||||||
|
|
||||||
ECHO [OK] All deployment files found on network
|
ECHO (OK) All deployment files found on network
|
||||||
ECHO Location: T:\COMMON\ProdSW\
|
ECHO Location: T:\COMMON\ProdSW\
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO GET_MACHINE_NAME
|
GOTO GET_MACHINE_NAME
|
||||||
|
|
||||||
:MISSING_FILES
|
:MISSING_FILES
|
||||||
ECHO [ERROR] Deployment files not found on network
|
ECHO ERROR: Deployment files not found on network
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Expected location: T:\COMMON\ProdSW\
|
ECHO Expected location: T:\COMMON\ProdSW\
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Files needed:
|
ECHO Files needed:
|
||||||
ECHO - NWTOC.BAT
|
ECHO - NWTOC.BAT
|
||||||
ECHO - CTONW.BAT
|
ECHO - CTONW.BAT
|
||||||
ECHO - UPDATE.BAT
|
ECHO - UPDATE.BAT
|
||||||
ECHO - STAGE.BAT
|
ECHO - STAGE.BAT
|
||||||
ECHO - CHECKUPD.BAT
|
ECHO - CHECKUPD.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Contact system administrator.
|
ECHO Contact system administrator.
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 3: Get machine name from user
|
REM STEP 3: Get machine name from user
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:GET_MACHINE_NAME
|
:GET_MACHINE_NAME
|
||||||
ECHO [STEP 3/5] Configure machine name...
|
ECHO Step 3 of 5: Configure machine name...
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
|
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Machine name must match the folder on T: drive.
|
ECHO Machine name must match the folder on T: drive.
|
||||||
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
|
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
|
||||||
ECHO.
|
ECHO.
|
||||||
SET /P MACHINE=Machine name:
|
SET /P MACHINE=Machine name:
|
||||||
|
|
||||||
REM Validate machine name was entered
|
REM Validate machine name was entered
|
||||||
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
|
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [OK] Machine name: %MACHINE%
|
ECHO (OK) Machine name: %MACHINE%
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Verify machine folder exists on network
|
REM Verify machine folder exists on network
|
||||||
ECHO Checking for T:\%MACHINE%\ folder...
|
ECHO Checking for T:\%MACHINE%\ folder...
|
||||||
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
|
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
|
||||||
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
|
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
|
||||||
|
|
||||||
ECHO [OK] Machine folder ready: T:\%MACHINE%\
|
ECHO (OK) Machine folder ready: T:\%MACHINE%\
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO BACKUP_AUTOEXEC
|
GOTO BACKUP_AUTOEXEC
|
||||||
|
|
||||||
:MACHINE_NAME_EMPTY
|
:MACHINE_NAME_EMPTY
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Machine name cannot be empty
|
ECHO ERROR: Machine name cannot be empty
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO GET_MACHINE_NAME
|
GOTO GET_MACHINE_NAME
|
||||||
|
|
||||||
:MACHINE_FOLDER_ERROR
|
:MACHINE_FOLDER_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not create machine folder on network
|
ECHO ERROR: Could not create machine folder on network
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - T: drive is writable
|
ECHO - T: drive is writable
|
||||||
ECHO - Network connection is stable
|
ECHO - Network connection is stable
|
||||||
ECHO - Permissions to create directories
|
ECHO - Permissions to create directories
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
|
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:BACKUP_AUTOEXEC
|
:BACKUP_AUTOEXEC
|
||||||
ECHO [STEP 4/5] Installing update system files...
|
ECHO Step 4 of 5: Installing update system files...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Backup current AUTOEXEC.BAT
|
REM Backup current AUTOEXEC.BAT
|
||||||
IF NOT EXIST C:\AUTOEXEC.BAT GOTO NO_AUTOEXEC_BACKUP
|
IF NOT EXIST C:\AUTOEXEC.BAT GOTO NO_AUTOEXEC_BACKUP
|
||||||
|
|
||||||
ECHO Backing up AUTOEXEC.BAT...
|
ECHO Backing up AUTOEXEC.BAT...
|
||||||
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
|
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
|
||||||
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
|
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
|
||||||
ECHO [OK] Backup created: C:\AUTOEXEC.SAV
|
ECHO (OK) Backup created: C:\AUTOEXEC.SAV
|
||||||
GOTO AUTOEXEC_BACKUP_DONE
|
GOTO AUTOEXEC_BACKUP_DONE
|
||||||
|
|
||||||
:NO_AUTOEXEC_BACKUP
|
:NO_AUTOEXEC_BACKUP
|
||||||
ECHO [WARNING] No existing AUTOEXEC.BAT found
|
ECHO WARNING: No existing AUTOEXEC.BAT found
|
||||||
|
|
||||||
:AUTOEXEC_BACKUP_DONE
|
:AUTOEXEC_BACKUP_DONE
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Create C:\BAT directory if it doesn't exist
|
REM Create C:\BAT directory if it doesn't exist
|
||||||
IF NOT EXIST C:\BAT\NUL MD C:\BAT
|
IF NOT EXIST C:\BAT\NUL MD C:\BAT
|
||||||
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
|
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
|
||||||
|
|
||||||
ECHO Copying update system files to C:\BAT\...
|
ECHO Copying update system files to C:\BAT\...
|
||||||
|
|
||||||
REM Copy batch files from network to local machine
|
REM Copy batch files from network to local machine
|
||||||
XCOPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] NWTOC.BAT
|
ECHO (OK) NWTOC.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] CTONW.BAT
|
ECHO (OK) CTONW.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] UPDATE.BAT
|
ECHO (OK) UPDATE.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\STAGE.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\STAGE.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] STAGE.BAT
|
ECHO (OK) STAGE.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] CHECKUPD.BAT
|
ECHO (OK) CHECKUPD.BAT
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [OK] All update system files installed
|
ECHO (OK) All update system files installed
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO UPDATE_AUTOEXEC
|
GOTO UPDATE_AUTOEXEC
|
||||||
|
|
||||||
:BACKUP_ERROR
|
:BACKUP_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not backup AUTOEXEC.BAT
|
ECHO ERROR: Could not backup AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Continue anyway? (Y/N)
|
ECHO Continue anyway? (Y/N)
|
||||||
CHOICE /C:YN /N
|
CHOICE /C:YN /N
|
||||||
IF ERRORLEVEL 2 GOTO END
|
IF ERRORLEVEL 2 GOTO END
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO UPDATE_AUTOEXEC
|
GOTO UPDATE_AUTOEXEC
|
||||||
|
|
||||||
:BAT_DIR_ERROR
|
:BAT_DIR_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not create C:\BAT directory
|
ECHO ERROR: Could not create C:\BAT directory
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:COPY_ERROR
|
:COPY_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Failed to copy files from network
|
ECHO ERROR: Failed to copy files from network
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - T: drive is accessible
|
ECHO - T: drive is accessible
|
||||||
ECHO - C: drive has free space
|
ECHO - C: drive has free space
|
||||||
ECHO - No file locks on C:\BAT\
|
ECHO - No file locks on C:\BAT\
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
|
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:UPDATE_AUTOEXEC
|
:UPDATE_AUTOEXEC
|
||||||
ECHO [STEP 5/5] Updating AUTOEXEC.BAT...
|
ECHO Step 5 of 5: Updating AUTOEXEC.BAT...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
|
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
|
||||||
IF NOT EXIST C:\AUTOEXEC.BAT GOTO ADD_MACHINE_VAR
|
IF NOT EXIST C:\AUTOEXEC.BAT GOTO ADD_MACHINE_VAR
|
||||||
|
|
||||||
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
|
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
|
||||||
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
|
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
|
||||||
|
|
||||||
:ADD_MACHINE_VAR
|
:ADD_MACHINE_VAR
|
||||||
|
|
||||||
REM Append MACHINE variable to AUTOEXEC.BAT
|
REM Append MACHINE variable to AUTOEXEC.BAT
|
||||||
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
|
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
|
||||||
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
|
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
|
||||||
|
|
||||||
ECHO [OK] Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
|
ECHO (OK) Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO DEPLOYMENT_COMPLETE
|
GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
:MACHINE_EXISTS
|
:MACHINE_EXISTS
|
||||||
ECHO [WARNING] MACHINE variable already exists in AUTOEXEC.BAT
|
ECHO WARNING: MACHINE variable already exists in AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Current AUTOEXEC.BAT contains:
|
ECHO Current AUTOEXEC.BAT contains:
|
||||||
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
|
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
|
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
|
||||||
CHOICE /C:YN /N
|
CHOICE /C:YN /N
|
||||||
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
|
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Manual edit required:
|
ECHO Manual edit required:
|
||||||
ECHO 1. Edit C:\AUTOEXEC.BAT
|
ECHO 1. Edit C:\AUTOEXEC.BAT
|
||||||
ECHO 2. Find line: SET MACHINE=...
|
ECHO 2. Find line: SET MACHINE=...
|
||||||
ECHO 3. Change to: SET MACHINE=%MACHINE%
|
ECHO 3. Change to: SET MACHINE=%MACHINE%
|
||||||
ECHO 4. Save and reboot
|
ECHO 4. Save and reboot
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to continue...
|
PAUSE Press any key to continue...
|
||||||
GOTO DEPLOYMENT_COMPLETE
|
GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
:AUTOEXEC_ERROR
|
:AUTOEXEC_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not update AUTOEXEC.BAT
|
ECHO ERROR: Could not update AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
|
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
|
||||||
ECHO SET MACHINE=%MACHINE%
|
ECHO SET MACHINE=%MACHINE%
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to continue...
|
PAUSE Press any key to continue...
|
||||||
GOTO DEPLOYMENT_COMPLETE
|
GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM DEPLOYMENT COMPLETE
|
REM DEPLOYMENT COMPLETE
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:DEPLOYMENT_COMPLETE
|
:DEPLOYMENT_COMPLETE
|
||||||
CLS
|
CLS
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Deployment Complete!
|
ECHO Deployment Complete!
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO The DOS Update System has been installed on this machine.
|
ECHO The DOS Update System has been installed on this machine.
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Machine name: %MACHINE%
|
ECHO Machine name: %MACHINE%
|
||||||
ECHO Backup location: T:\%MACHINE%\BACKUP\
|
ECHO Backup location: T:\%MACHINE%\BACKUP\
|
||||||
ECHO Update location: T:\COMMON\ProdSW\
|
ECHO Update location: T:\COMMON\ProdSW\
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Available Commands:
|
ECHO Available Commands:
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC - Download updates from network
|
ECHO NWTOC - Download updates from network
|
||||||
ECHO CTONW - Upload local changes to network
|
ECHO CTONW - Upload local changes to network
|
||||||
ECHO UPDATE - Backup entire C: drive to network
|
ECHO UPDATE - Backup entire C: drive to network
|
||||||
ECHO CHECKUPD - Check for available updates
|
ECHO CHECKUPD - Check for available updates
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Next Steps:
|
ECHO Next Steps:
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO 1. REBOOT this machine to activate MACHINE variable
|
ECHO 1. REBOOT this machine to activate MACHINE variable
|
||||||
ECHO Press Ctrl+Alt+Del to reboot
|
ECHO Press Ctrl+Alt+Del to reboot
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO 2. After reboot, run NWTOC to download all updates:
|
ECHO 2. After reboot, run NWTOC to download all updates:
|
||||||
ECHO C:\BAT\NWTOC
|
ECHO C:\BAT\NWTOC
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO 3. Create initial backup:
|
ECHO 3. Create initial backup:
|
||||||
ECHO C:\BAT\UPDATE
|
ECHO C:\BAT\UPDATE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
|
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Create deployment log
|
REM Create deployment log
|
||||||
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
|
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
|
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
|
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
|
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
|
||||||
|
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM CLEANUP AND EXIT
|
REM CLEANUP AND EXIT
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:END
|
:END
|
||||||
REM Clean up environment variables
|
REM Clean up environment variables
|
||||||
SET MACHINE=
|
SET MACHINE=
|
||||||
|
|||||||
@@ -1,351 +1,351 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM DEPLOY.BAT - One-time deployment script for DOS Update System
|
REM DEPLOY.BAT - One-time deployment script for DOS Update System
|
||||||
REM
|
REM
|
||||||
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
|
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
|
||||||
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
|
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
|
||||||
REM
|
REM
|
||||||
REM What this does:
|
REM What this does:
|
||||||
REM 1. Backs up current AUTOEXEC.BAT
|
REM 1. Backs up current AUTOEXEC.BAT
|
||||||
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
|
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
|
||||||
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
|
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
|
||||||
REM 4. Copies update batch files to C:\BAT\
|
REM 4. Copies update batch files to C:\BAT\
|
||||||
REM 5. Runs initial NWTOC to download all updates
|
REM 5. Runs initial NWTOC to download all updates
|
||||||
REM
|
REM
|
||||||
REM Version: 1.0 - DOS 6.22 compatible
|
REM Version: 1.0 - DOS 6.22 compatible
|
||||||
REM Last modified: 2026-01-19
|
REM Last modified: 2026-01-19
|
||||||
|
|
||||||
CLS
|
CLS
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO DOS Update System - One-Time Deployment
|
ECHO DOS Update System - One-Time Deployment
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO This script will install the new update system on this machine.
|
ECHO This script will install the new update system on this machine.
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO What will be installed:
|
ECHO What will be installed:
|
||||||
ECHO - NWTOC.BAT (Download updates from network)
|
ECHO - NWTOC.BAT (Download updates from network)
|
||||||
ECHO - CTONW.BAT (Upload changes to network)
|
ECHO - CTONW.BAT (Upload changes to network)
|
||||||
ECHO - UPDATE.BAT (Full system backup)
|
ECHO - UPDATE.BAT (Full system backup)
|
||||||
ECHO - STAGE.BAT (System file staging)
|
ECHO - STAGE.BAT (System file staging)
|
||||||
ECHO - REBOOT.BAT (Apply updates on reboot)
|
ECHO - REBOOT.BAT (Apply updates on reboot)
|
||||||
ECHO - CHECKUPD.BAT (Check for updates)
|
ECHO - CHECKUPD.BAT (Check for updates)
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to continue...
|
PAUSE Press any key to continue...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 1: Verify T: drive is accessible
|
REM STEP 1: Verify T: drive is accessible
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO [STEP 1/5] Checking network drive...
|
ECHO Step 1 of 5: Checking network drive...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
T: 2>NUL
|
T: 2>NUL
|
||||||
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
|
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
|
||||||
|
|
||||||
C:
|
C:
|
||||||
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
|
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
|
||||||
|
|
||||||
ECHO [OK] T: drive is accessible
|
ECHO (OK) T: drive is accessible
|
||||||
ECHO T: = \\D2TESTNAS\test
|
ECHO T: = \\D2TESTNAS\test
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO CHECK_DEPLOY_FILES
|
GOTO CHECK_DEPLOY_FILES
|
||||||
|
|
||||||
:NO_T_DRIVE
|
:NO_T_DRIVE
|
||||||
C:
|
C:
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] T: drive not available
|
ECHO ERROR: T: drive not available
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
|
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Run network startup first:
|
ECHO Run network startup first:
|
||||||
ECHO C:\NET\STARTNET.BAT
|
ECHO C:\NET\STARTNET.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Or map manually:
|
ECHO Or map manually:
|
||||||
ECHO NET USE T: \\D2TESTNAS\test /YES
|
ECHO NET USE T: \\D2TESTNAS\test /YES
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Then run DEPLOY.BAT again.
|
ECHO Then run DEPLOY.BAT again.
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 2: Verify deployment files exist on network
|
REM STEP 2: Verify deployment files exist on network
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:CHECK_DEPLOY_FILES
|
:CHECK_DEPLOY_FILES
|
||||||
ECHO [STEP 2/5] Verifying deployment files...
|
ECHO Step 2 of 5: Verifying deployment files...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
|
||||||
|
|
||||||
ECHO [OK] All deployment files found on network
|
ECHO (OK) All deployment files found on network
|
||||||
ECHO Location: T:\COMMON\ProdSW\
|
ECHO Location: T:\COMMON\ProdSW\
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO GET_MACHINE_NAME
|
GOTO GET_MACHINE_NAME
|
||||||
|
|
||||||
:MISSING_FILES
|
:MISSING_FILES
|
||||||
ECHO [ERROR] Deployment files not found on network
|
ECHO ERROR: Deployment files not found on network
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Expected location: T:\COMMON\ProdSW\
|
ECHO Expected location: T:\COMMON\ProdSW\
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Files needed:
|
ECHO Files needed:
|
||||||
ECHO - NWTOC.BAT
|
ECHO - NWTOC.BAT
|
||||||
ECHO - CTONW.BAT
|
ECHO - CTONW.BAT
|
||||||
ECHO - UPDATE.BAT
|
ECHO - UPDATE.BAT
|
||||||
ECHO - STAGE.BAT
|
ECHO - STAGE.BAT
|
||||||
ECHO - CHECKUPD.BAT
|
ECHO - CHECKUPD.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Contact system administrator.
|
ECHO Contact system administrator.
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 3: Get machine name from user
|
REM STEP 3: Get machine name from user
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:GET_MACHINE_NAME
|
:GET_MACHINE_NAME
|
||||||
ECHO [STEP 3/5] Configure machine name...
|
ECHO Step 3 of 5: Configure machine name...
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
|
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Machine name must match the folder on T: drive.
|
ECHO Machine name must match the folder on T: drive.
|
||||||
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
|
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
|
||||||
ECHO.
|
ECHO.
|
||||||
SET /P MACHINE=Machine name:
|
SET /P MACHINE=Machine name:
|
||||||
|
|
||||||
REM Validate machine name was entered
|
REM Validate machine name was entered
|
||||||
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
|
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [OK] Machine name: %MACHINE%
|
ECHO (OK) Machine name: %MACHINE%
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Verify machine folder exists on network
|
REM Verify machine folder exists on network
|
||||||
ECHO Checking for T:\%MACHINE%\ folder...
|
ECHO Checking for T:\%MACHINE%\ folder...
|
||||||
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
|
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
|
||||||
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
|
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
|
||||||
|
|
||||||
ECHO [OK] Machine folder ready: T:\%MACHINE%\
|
ECHO (OK) Machine folder ready: T:\%MACHINE%\
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO BACKUP_AUTOEXEC
|
GOTO BACKUP_AUTOEXEC
|
||||||
|
|
||||||
:MACHINE_NAME_EMPTY
|
:MACHINE_NAME_EMPTY
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Machine name cannot be empty
|
ECHO ERROR: Machine name cannot be empty
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO GET_MACHINE_NAME
|
GOTO GET_MACHINE_NAME
|
||||||
|
|
||||||
:MACHINE_FOLDER_ERROR
|
:MACHINE_FOLDER_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not create machine folder on network
|
ECHO ERROR: Could not create machine folder on network
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - T: drive is writable
|
ECHO - T: drive is writable
|
||||||
ECHO - Network connection is stable
|
ECHO - Network connection is stable
|
||||||
ECHO - Permissions to create directories
|
ECHO - Permissions to create directories
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
|
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:BACKUP_AUTOEXEC
|
:BACKUP_AUTOEXEC
|
||||||
ECHO [STEP 4/5] Installing update system files...
|
ECHO Step 4 of 5: Installing update system files...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Backup current AUTOEXEC.BAT
|
REM Backup current AUTOEXEC.BAT
|
||||||
IF NOT EXIST C:\AUTOEXEC.BAT GOTO NO_AUTOEXEC_BACKUP
|
IF NOT EXIST C:\AUTOEXEC.BAT GOTO NO_AUTOEXEC_BACKUP
|
||||||
|
|
||||||
ECHO Backing up AUTOEXEC.BAT...
|
ECHO Backing up AUTOEXEC.BAT...
|
||||||
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
|
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
|
||||||
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
|
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
|
||||||
ECHO [OK] Backup created: C:\AUTOEXEC.SAV
|
ECHO (OK) Backup created: C:\AUTOEXEC.SAV
|
||||||
GOTO AUTOEXEC_BACKUP_DONE
|
GOTO AUTOEXEC_BACKUP_DONE
|
||||||
|
|
||||||
:NO_AUTOEXEC_BACKUP
|
:NO_AUTOEXEC_BACKUP
|
||||||
ECHO [WARNING] No existing AUTOEXEC.BAT found
|
ECHO WARNING: No existing AUTOEXEC.BAT found
|
||||||
|
|
||||||
:AUTOEXEC_BACKUP_DONE
|
:AUTOEXEC_BACKUP_DONE
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Create C:\BAT directory if it doesn't exist
|
REM Create C:\BAT directory if it doesn't exist
|
||||||
IF NOT EXIST C:\BAT\NUL MD C:\BAT
|
IF NOT EXIST C:\BAT\NUL MD C:\BAT
|
||||||
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
|
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
|
||||||
|
|
||||||
ECHO Copying update system files to C:\BAT\...
|
ECHO Copying update system files to C:\BAT\...
|
||||||
|
|
||||||
REM Copy batch files from network to local machine
|
REM Copy batch files from network to local machine
|
||||||
XCOPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] NWTOC.BAT
|
ECHO (OK) NWTOC.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] CTONW.BAT
|
ECHO (OK) CTONW.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] UPDATE.BAT
|
ECHO (OK) UPDATE.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\STAGE.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\STAGE.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] STAGE.BAT
|
ECHO (OK) STAGE.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] CHECKUPD.BAT
|
ECHO (OK) CHECKUPD.BAT
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [OK] All update system files installed
|
ECHO (OK) All update system files installed
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO UPDATE_AUTOEXEC
|
GOTO UPDATE_AUTOEXEC
|
||||||
|
|
||||||
:BACKUP_ERROR
|
:BACKUP_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not backup AUTOEXEC.BAT
|
ECHO ERROR: Could not backup AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Continue anyway? (Y/N)
|
ECHO Continue anyway? (Y/N)
|
||||||
CHOICE /C:YN /N
|
CHOICE /C:YN /N
|
||||||
IF ERRORLEVEL 2 GOTO END
|
IF ERRORLEVEL 2 GOTO END
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO UPDATE_AUTOEXEC
|
GOTO UPDATE_AUTOEXEC
|
||||||
|
|
||||||
:BAT_DIR_ERROR
|
:BAT_DIR_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not create C:\BAT directory
|
ECHO ERROR: Could not create C:\BAT directory
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:COPY_ERROR
|
:COPY_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Failed to copy files from network
|
ECHO ERROR: Failed to copy files from network
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - T: drive is accessible
|
ECHO - T: drive is accessible
|
||||||
ECHO - C: drive has free space
|
ECHO - C: drive has free space
|
||||||
ECHO - No file locks on C:\BAT\
|
ECHO - No file locks on C:\BAT\
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
|
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:UPDATE_AUTOEXEC
|
:UPDATE_AUTOEXEC
|
||||||
ECHO [STEP 5/5] Updating AUTOEXEC.BAT...
|
ECHO Step 5 of 5: Updating AUTOEXEC.BAT...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
|
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
|
||||||
IF NOT EXIST C:\AUTOEXEC.BAT GOTO ADD_MACHINE_VAR
|
IF NOT EXIST C:\AUTOEXEC.BAT GOTO ADD_MACHINE_VAR
|
||||||
|
|
||||||
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
|
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
|
||||||
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
|
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
|
||||||
|
|
||||||
:ADD_MACHINE_VAR
|
:ADD_MACHINE_VAR
|
||||||
|
|
||||||
REM Append MACHINE variable to AUTOEXEC.BAT
|
REM Append MACHINE variable to AUTOEXEC.BAT
|
||||||
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
|
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
|
||||||
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
|
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
|
||||||
|
|
||||||
ECHO [OK] Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
|
ECHO (OK) Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO DEPLOYMENT_COMPLETE
|
GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
:MACHINE_EXISTS
|
:MACHINE_EXISTS
|
||||||
ECHO [WARNING] MACHINE variable already exists in AUTOEXEC.BAT
|
ECHO WARNING: MACHINE variable already exists in AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Current AUTOEXEC.BAT contains:
|
ECHO Current AUTOEXEC.BAT contains:
|
||||||
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
|
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
|
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
|
||||||
CHOICE /C:YN /N
|
CHOICE /C:YN /N
|
||||||
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
|
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Manual edit required:
|
ECHO Manual edit required:
|
||||||
ECHO 1. Edit C:\AUTOEXEC.BAT
|
ECHO 1. Edit C:\AUTOEXEC.BAT
|
||||||
ECHO 2. Find line: SET MACHINE=...
|
ECHO 2. Find line: SET MACHINE=...
|
||||||
ECHO 3. Change to: SET MACHINE=%MACHINE%
|
ECHO 3. Change to: SET MACHINE=%MACHINE%
|
||||||
ECHO 4. Save and reboot
|
ECHO 4. Save and reboot
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to continue...
|
PAUSE Press any key to continue...
|
||||||
GOTO DEPLOYMENT_COMPLETE
|
GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
:AUTOEXEC_ERROR
|
:AUTOEXEC_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not update AUTOEXEC.BAT
|
ECHO ERROR: Could not update AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
|
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
|
||||||
ECHO SET MACHINE=%MACHINE%
|
ECHO SET MACHINE=%MACHINE%
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to continue...
|
PAUSE Press any key to continue...
|
||||||
GOTO DEPLOYMENT_COMPLETE
|
GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM DEPLOYMENT COMPLETE
|
REM DEPLOYMENT COMPLETE
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:DEPLOYMENT_COMPLETE
|
:DEPLOYMENT_COMPLETE
|
||||||
CLS
|
CLS
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Deployment Complete!
|
ECHO Deployment Complete!
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO The DOS Update System has been installed on this machine.
|
ECHO The DOS Update System has been installed on this machine.
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Machine name: %MACHINE%
|
ECHO Machine name: %MACHINE%
|
||||||
ECHO Backup location: T:\%MACHINE%\BACKUP\
|
ECHO Backup location: T:\%MACHINE%\BACKUP\
|
||||||
ECHO Update location: T:\COMMON\ProdSW\
|
ECHO Update location: T:\COMMON\ProdSW\
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Available Commands:
|
ECHO Available Commands:
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC - Download updates from network
|
ECHO NWTOC - Download updates from network
|
||||||
ECHO CTONW - Upload local changes to network
|
ECHO CTONW - Upload local changes to network
|
||||||
ECHO UPDATE - Backup entire C: drive to network
|
ECHO UPDATE - Backup entire C: drive to network
|
||||||
ECHO CHECKUPD - Check for available updates
|
ECHO CHECKUPD - Check for available updates
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Next Steps:
|
ECHO Next Steps:
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO 1. REBOOT this machine to activate MACHINE variable
|
ECHO 1. REBOOT this machine to activate MACHINE variable
|
||||||
ECHO Press Ctrl+Alt+Del to reboot
|
ECHO Press Ctrl+Alt+Del to reboot
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO 2. After reboot, run NWTOC to download all updates:
|
ECHO 2. After reboot, run NWTOC to download all updates:
|
||||||
ECHO C:\BAT\NWTOC
|
ECHO C:\BAT\NWTOC
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO 3. Create initial backup:
|
ECHO 3. Create initial backup:
|
||||||
ECHO C:\BAT\UPDATE
|
ECHO C:\BAT\UPDATE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
|
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Create deployment log
|
REM Create deployment log
|
||||||
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
|
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
|
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
|
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
|
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
|
||||||
|
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM CLEANUP AND EXIT
|
REM CLEANUP AND EXIT
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:END
|
:END
|
||||||
REM Clean up environment variables
|
REM Clean up environment variables
|
||||||
SET MACHINE=
|
SET MACHINE=
|
||||||
|
|||||||
@@ -1,345 +1,345 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM DEPLOY.BAT - One-time deployment script for DOS Update System
|
REM DEPLOY.BAT - One-time deployment script for DOS Update System
|
||||||
REM
|
REM
|
||||||
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
|
REM Purpose: Installs the new NWTOC update system on DOS 6.22 machines
|
||||||
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
|
REM Location: Run from T:\COMMON\ProdSW\DEPLOY.BAT
|
||||||
REM
|
REM
|
||||||
REM What this does:
|
REM What this does:
|
||||||
REM 1. Backs up current AUTOEXEC.BAT
|
REM 1. Backs up current AUTOEXEC.BAT
|
||||||
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
|
REM 2. Prompts for machine name (TS-4R, TS-7A, etc.)
|
||||||
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
|
REM 3. Updates AUTOEXEC.BAT with MACHINE variable
|
||||||
REM 4. Copies update batch files to C:\BAT\
|
REM 4. Copies update batch files to C:\BAT\
|
||||||
REM 5. Runs initial NWTOC to download all updates
|
REM 5. Runs initial NWTOC to download all updates
|
||||||
REM
|
REM
|
||||||
REM Version: 1.0 - DOS 6.22 compatible
|
REM Version: 1.0 - DOS 6.22 compatible
|
||||||
REM Last modified: 2026-01-19
|
REM Last modified: 2026-01-19
|
||||||
|
|
||||||
CLS
|
CLS
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO DOS Update System - One-Time Deployment
|
ECHO DOS Update System - One-Time Deployment
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO This script will install the new update system on this machine.
|
ECHO This script will install the new update system on this machine.
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO What will be installed:
|
ECHO What will be installed:
|
||||||
ECHO - NWTOC.BAT (Download updates from network)
|
ECHO - NWTOC.BAT (Download updates from network)
|
||||||
ECHO - CTONW.BAT (Upload changes to network)
|
ECHO - CTONW.BAT (Upload changes to network)
|
||||||
ECHO - UPDATE.BAT (Full system backup)
|
ECHO - UPDATE.BAT (Full system backup)
|
||||||
ECHO - STAGE.BAT (System file staging)
|
ECHO - STAGE.BAT (System file staging)
|
||||||
ECHO - REBOOT.BAT (Apply updates on reboot)
|
ECHO - REBOOT.BAT (Apply updates on reboot)
|
||||||
ECHO - CHECKUPD.BAT (Check for updates)
|
ECHO - CHECKUPD.BAT (Check for updates)
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to continue...
|
PAUSE Press any key to continue...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 1: Verify T: drive is accessible
|
REM STEP 1: Verify T: drive is accessible
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO [STEP 1/5] Checking network drive...
|
ECHO Step 1 of 5: Checking network drive...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
T: 2>NUL
|
T: 2>NUL
|
||||||
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
|
IF ERRORLEVEL 1 GOTO NO_T_DRIVE
|
||||||
|
|
||||||
C:
|
C:
|
||||||
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
|
IF NOT EXIST T:\NUL GOTO NO_T_DRIVE
|
||||||
|
|
||||||
ECHO [OK] T: drive is accessible
|
ECHO (OK) T: drive is accessible
|
||||||
ECHO T: = \\D2TESTNAS\test
|
ECHO T: = \\D2TESTNAS\test
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO CHECK_DEPLOY_FILES
|
GOTO CHECK_DEPLOY_FILES
|
||||||
|
|
||||||
:NO_T_DRIVE
|
:NO_T_DRIVE
|
||||||
C:
|
C:
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] T: drive not available
|
ECHO ERROR: T: drive not available
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
|
ECHO The network drive T: must be mapped to \\D2TESTNAS\test
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Run network startup first:
|
ECHO Run network startup first:
|
||||||
ECHO C:\NET\STARTNET.BAT
|
ECHO C:\NET\STARTNET.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Or map manually:
|
ECHO Or map manually:
|
||||||
ECHO NET USE T: \\D2TESTNAS\test /YES
|
ECHO NET USE T: \\D2TESTNAS\test /YES
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Then run DEPLOY.BAT again.
|
ECHO Then run DEPLOY.BAT again.
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 2: Verify deployment files exist on network
|
REM STEP 2: Verify deployment files exist on network
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:CHECK_DEPLOY_FILES
|
:CHECK_DEPLOY_FILES
|
||||||
ECHO [STEP 2/5] Verifying deployment files...
|
ECHO Step 2 of 5: Verifying deployment files...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\NWTOC.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\CTONW.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\UPDATE.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\STAGE.BAT GOTO MISSING_FILES
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
|
IF NOT EXIST T:\COMMON\ProdSW\CHECKUPD.BAT GOTO MISSING_FILES
|
||||||
|
|
||||||
ECHO [OK] All deployment files found on network
|
ECHO (OK) All deployment files found on network
|
||||||
ECHO Location: T:\COMMON\ProdSW\
|
ECHO Location: T:\COMMON\ProdSW\
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO GET_MACHINE_NAME
|
GOTO GET_MACHINE_NAME
|
||||||
|
|
||||||
:MISSING_FILES
|
:MISSING_FILES
|
||||||
ECHO [ERROR] Deployment files not found on network
|
ECHO ERROR: Deployment files not found on network
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Expected location: T:\COMMON\ProdSW\
|
ECHO Expected location: T:\COMMON\ProdSW\
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Files needed:
|
ECHO Files needed:
|
||||||
ECHO - NWTOC.BAT
|
ECHO - NWTOC.BAT
|
||||||
ECHO - CTONW.BAT
|
ECHO - CTONW.BAT
|
||||||
ECHO - UPDATE.BAT
|
ECHO - UPDATE.BAT
|
||||||
ECHO - STAGE.BAT
|
ECHO - STAGE.BAT
|
||||||
ECHO - CHECKUPD.BAT
|
ECHO - CHECKUPD.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Contact system administrator.
|
ECHO Contact system administrator.
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 3: Get machine name from user
|
REM STEP 3: Get machine name from user
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:GET_MACHINE_NAME
|
:GET_MACHINE_NAME
|
||||||
ECHO [STEP 3/5] Configure machine name...
|
ECHO Step 3 of 5: Configure machine name...
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
|
ECHO Enter this machine's name (e.g., TS-4R, TS-7A, TS-12B):
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Machine name must match the folder on T: drive.
|
ECHO Machine name must match the folder on T: drive.
|
||||||
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
|
ECHO Example: If this is TS-4R, there should be T:\TS-4R\
|
||||||
ECHO.
|
ECHO.
|
||||||
SET /P MACHINE=Machine name:
|
SET /P MACHINE=Machine name:
|
||||||
|
|
||||||
REM Validate machine name was entered
|
REM Validate machine name was entered
|
||||||
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
|
IF "%MACHINE%"=="" GOTO MACHINE_NAME_EMPTY
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [OK] Machine name: %MACHINE%
|
ECHO (OK) Machine name: %MACHINE%
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Verify machine folder exists on network
|
REM Verify machine folder exists on network
|
||||||
ECHO Checking for T:\%MACHINE%\ folder...
|
ECHO Checking for T:\%MACHINE%\ folder...
|
||||||
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
|
IF NOT EXIST T:\%MACHINE%\NUL MD T:\%MACHINE%
|
||||||
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
|
IF NOT EXIST T:\%MACHINE%\NUL GOTO MACHINE_FOLDER_ERROR
|
||||||
|
|
||||||
ECHO [OK] Machine folder ready: T:\%MACHINE%\
|
ECHO (OK) Machine folder ready: T:\%MACHINE%\
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO BACKUP_AUTOEXEC
|
GOTO BACKUP_AUTOEXEC
|
||||||
|
|
||||||
:MACHINE_NAME_EMPTY
|
:MACHINE_NAME_EMPTY
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Machine name cannot be empty
|
ECHO ERROR: Machine name cannot be empty
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO GET_MACHINE_NAME
|
GOTO GET_MACHINE_NAME
|
||||||
|
|
||||||
:MACHINE_FOLDER_ERROR
|
:MACHINE_FOLDER_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not create machine folder on network
|
ECHO ERROR: Could not create machine folder on network
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - T: drive is writable
|
ECHO - T: drive is writable
|
||||||
ECHO - Network connection is stable
|
ECHO - Network connection is stable
|
||||||
ECHO - Permissions to create directories
|
ECHO - Permissions to create directories
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
|
REM STEP 4: Backup current AUTOEXEC.BAT and install batch files
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:BACKUP_AUTOEXEC
|
:BACKUP_AUTOEXEC
|
||||||
ECHO [STEP 4/5] Installing update system files...
|
ECHO Step 4 of 5: Installing update system files...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Backup current AUTOEXEC.BAT
|
REM Backup current AUTOEXEC.BAT
|
||||||
IF EXIST C:\AUTOEXEC.BAT (
|
IF EXIST C:\AUTOEXEC.BAT (
|
||||||
ECHO Backing up AUTOEXEC.BAT...
|
ECHO Backing up AUTOEXEC.BAT...
|
||||||
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
|
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
|
||||||
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
|
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
|
||||||
ECHO [OK] Backup created: C:\AUTOEXEC.SAV
|
ECHO (OK) Backup created: C:\AUTOEXEC.SAV
|
||||||
) ELSE (
|
) ELSE (
|
||||||
ECHO [WARNING] No existing AUTOEXEC.BAT found
|
ECHO WARNING: No existing AUTOEXEC.BAT found
|
||||||
)
|
)
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Create C:\BAT directory if it doesn't exist
|
REM Create C:\BAT directory if it doesn't exist
|
||||||
IF NOT EXIST C:\BAT\NUL MD C:\BAT
|
IF NOT EXIST C:\BAT\NUL MD C:\BAT
|
||||||
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
|
IF NOT EXIST C:\BAT\NUL GOTO BAT_DIR_ERROR
|
||||||
|
|
||||||
ECHO Copying update system files to C:\BAT\...
|
ECHO Copying update system files to C:\BAT\...
|
||||||
|
|
||||||
REM Copy batch files from network to local machine
|
REM Copy batch files from network to local machine
|
||||||
XCOPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\NWTOC.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] NWTOC.BAT
|
ECHO (OK) NWTOC.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\CTONW.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] CTONW.BAT
|
ECHO (OK) CTONW.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\UPDATE.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] UPDATE.BAT
|
ECHO (OK) UPDATE.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\STAGE.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\STAGE.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] STAGE.BAT
|
ECHO (OK) STAGE.BAT
|
||||||
|
|
||||||
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
|
XCOPY T:\COMMON\ProdSW\CHECKUPD.BAT C:\BAT\ /Y
|
||||||
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
IF ERRORLEVEL 4 GOTO COPY_ERROR
|
||||||
ECHO [OK] CHECKUPD.BAT
|
ECHO (OK) CHECKUPD.BAT
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [OK] All update system files installed
|
ECHO (OK) All update system files installed
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO UPDATE_AUTOEXEC
|
GOTO UPDATE_AUTOEXEC
|
||||||
|
|
||||||
:BACKUP_ERROR
|
:BACKUP_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not backup AUTOEXEC.BAT
|
ECHO ERROR: Could not backup AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Continue anyway? (Y/N)
|
ECHO Continue anyway? (Y/N)
|
||||||
CHOICE /C:YN /N
|
CHOICE /C:YN /N
|
||||||
IF ERRORLEVEL 2 GOTO END
|
IF ERRORLEVEL 2 GOTO END
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO UPDATE_AUTOEXEC
|
GOTO UPDATE_AUTOEXEC
|
||||||
|
|
||||||
:BAT_DIR_ERROR
|
:BAT_DIR_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not create C:\BAT directory
|
ECHO ERROR: Could not create C:\BAT directory
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:COPY_ERROR
|
:COPY_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Failed to copy files from network
|
ECHO ERROR: Failed to copy files from network
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - T: drive is accessible
|
ECHO - T: drive is accessible
|
||||||
ECHO - C: drive has free space
|
ECHO - C: drive has free space
|
||||||
ECHO - No file locks on C:\BAT\
|
ECHO - No file locks on C:\BAT\
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
|
REM STEP 5: Update AUTOEXEC.BAT with MACHINE variable
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:UPDATE_AUTOEXEC
|
:UPDATE_AUTOEXEC
|
||||||
ECHO [STEP 5/5] Updating AUTOEXEC.BAT...
|
ECHO Step 5 of 5: Updating AUTOEXEC.BAT...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
|
REM Check if MACHINE variable already exists in AUTOEXEC.BAT
|
||||||
IF EXIST C:\AUTOEXEC.BAT (
|
IF EXIST C:\AUTOEXEC.BAT (
|
||||||
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
|
FIND "SET MACHINE=" C:\AUTOEXEC.BAT >NUL
|
||||||
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
|
IF NOT ERRORLEVEL 1 GOTO MACHINE_EXISTS
|
||||||
)
|
)
|
||||||
|
|
||||||
REM Append MACHINE variable to AUTOEXEC.BAT
|
REM Append MACHINE variable to AUTOEXEC.BAT
|
||||||
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
|
ECHO SET MACHINE=%MACHINE% >> C:\AUTOEXEC.BAT
|
||||||
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
|
IF ERRORLEVEL 1 GOTO AUTOEXEC_ERROR
|
||||||
|
|
||||||
ECHO [OK] Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
|
ECHO (OK) Added to AUTOEXEC.BAT: SET MACHINE=%MACHINE%
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO DEPLOYMENT_COMPLETE
|
GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
:MACHINE_EXISTS
|
:MACHINE_EXISTS
|
||||||
ECHO [WARNING] MACHINE variable already exists in AUTOEXEC.BAT
|
ECHO WARNING: MACHINE variable already exists in AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Current AUTOEXEC.BAT contains:
|
ECHO Current AUTOEXEC.BAT contains:
|
||||||
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
|
TYPE C:\AUTOEXEC.BAT | FIND "SET MACHINE="
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
|
ECHO Update MACHINE variable to %MACHINE%? (Y/N)
|
||||||
CHOICE /C:YN /N
|
CHOICE /C:YN /N
|
||||||
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
|
IF ERRORLEVEL 2 GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Manual edit required:
|
ECHO Manual edit required:
|
||||||
ECHO 1. Edit C:\AUTOEXEC.BAT
|
ECHO 1. Edit C:\AUTOEXEC.BAT
|
||||||
ECHO 2. Find line: SET MACHINE=...
|
ECHO 2. Find line: SET MACHINE=...
|
||||||
ECHO 3. Change to: SET MACHINE=%MACHINE%
|
ECHO 3. Change to: SET MACHINE=%MACHINE%
|
||||||
ECHO 4. Save and reboot
|
ECHO 4. Save and reboot
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to continue...
|
PAUSE Press any key to continue...
|
||||||
GOTO DEPLOYMENT_COMPLETE
|
GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
:AUTOEXEC_ERROR
|
:AUTOEXEC_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not update AUTOEXEC.BAT
|
ECHO ERROR: Could not update AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
|
ECHO You must manually add this line to C:\AUTOEXEC.BAT:
|
||||||
ECHO SET MACHINE=%MACHINE%
|
ECHO SET MACHINE=%MACHINE%
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE Press any key to continue...
|
PAUSE Press any key to continue...
|
||||||
GOTO DEPLOYMENT_COMPLETE
|
GOTO DEPLOYMENT_COMPLETE
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM DEPLOYMENT COMPLETE
|
REM DEPLOYMENT COMPLETE
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:DEPLOYMENT_COMPLETE
|
:DEPLOYMENT_COMPLETE
|
||||||
CLS
|
CLS
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Deployment Complete!
|
ECHO Deployment Complete!
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO The DOS Update System has been installed on this machine.
|
ECHO The DOS Update System has been installed on this machine.
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Machine name: %MACHINE%
|
ECHO Machine name: %MACHINE%
|
||||||
ECHO Backup location: T:\%MACHINE%\BACKUP\
|
ECHO Backup location: T:\%MACHINE%\BACKUP\
|
||||||
ECHO Update location: T:\COMMON\ProdSW\
|
ECHO Update location: T:\COMMON\ProdSW\
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Available Commands:
|
ECHO Available Commands:
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC - Download updates from network
|
ECHO NWTOC - Download updates from network
|
||||||
ECHO CTONW - Upload local changes to network
|
ECHO CTONW - Upload local changes to network
|
||||||
ECHO UPDATE - Backup entire C: drive to network
|
ECHO UPDATE - Backup entire C: drive to network
|
||||||
ECHO CHECKUPD - Check for available updates
|
ECHO CHECKUPD - Check for available updates
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Next Steps:
|
ECHO Next Steps:
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO 1. REBOOT this machine to activate MACHINE variable
|
ECHO 1. REBOOT this machine to activate MACHINE variable
|
||||||
ECHO Press Ctrl+Alt+Del to reboot
|
ECHO Press Ctrl+Alt+Del to reboot
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO 2. After reboot, run NWTOC to download all updates:
|
ECHO 2. After reboot, run NWTOC to download all updates:
|
||||||
ECHO C:\BAT\NWTOC
|
ECHO C:\BAT\NWTOC
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO 3. Create initial backup:
|
ECHO 3. Create initial backup:
|
||||||
ECHO C:\BAT\UPDATE
|
ECHO C:\BAT\UPDATE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
|
ECHO Deployment log saved to: T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Create deployment log
|
REM Create deployment log
|
||||||
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
|
ECHO Deployment completed: %DATE% %TIME% > T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
|
ECHO Machine: %MACHINE% >> T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
|
ECHO Files installed to: C:\BAT\ >> T:\%MACHINE%\DEPLOY.LOG
|
||||||
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
|
ECHO AUTOEXEC.BAT backup: C:\AUTOEXEC.SAV >> T:\%MACHINE%\DEPLOY.LOG
|
||||||
|
|
||||||
PAUSE Press any key to exit...
|
PAUSE Press any key to exit...
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM CLEANUP AND EXIT
|
REM CLEANUP AND EXIT
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:END
|
:END
|
||||||
REM Clean up environment variables
|
REM Clean up environment variables
|
||||||
SET MACHINE=
|
SET MACHINE=
|
||||||
|
|||||||
29
projects/dataforth-dos/batch-files/DIAGBK.BAT
Normal file
29
projects/dataforth-dos/batch-files/DIAGBK.BAT
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
@ECHO OFF
|
||||||
|
REM DIAGBK.BAT - Diagnostic Backup
|
||||||
|
REM Version: 1.1 - Simplified for DOS 6.22
|
||||||
|
|
||||||
|
ECHO.
|
||||||
|
ECHO Diagnostic Backup
|
||||||
|
ECHO.
|
||||||
|
|
||||||
|
MD T:\%MACHINE%\DIAG
|
||||||
|
MD T:\%MACHINE%\DIAG\BAT
|
||||||
|
|
||||||
|
ECHO Copying AUTOEXEC.BAT
|
||||||
|
COPY C:\AUTOEXEC.BAT T:\%MACHINE%\DIAG
|
||||||
|
|
||||||
|
ECHO Copying CONFIG.SYS
|
||||||
|
COPY C:\CONFIG.SYS T:\%MACHINE%\DIAG
|
||||||
|
|
||||||
|
ECHO Copying STARTNET.BAT
|
||||||
|
COPY C:\STARTNET.BAT T:\%MACHINE%\DIAG
|
||||||
|
|
||||||
|
ECHO Copying C:\BAT files
|
||||||
|
COPY C:\BAT\*.* T:\%MACHINE%\DIAG\BAT
|
||||||
|
|
||||||
|
ECHO Copying C:\BATCH files
|
||||||
|
COPY C:\BATCH\*.* T:\%MACHINE%\DIAG\BAT
|
||||||
|
|
||||||
|
ECHO.
|
||||||
|
ECHO Done - files in T:\%MACHINE%\DIAG
|
||||||
|
ECHO.
|
||||||
@@ -1,167 +1,167 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM DOSTEST.BAT - Test DOS batch file deployment
|
REM DOSTEST.BAT - Test DOS batch file deployment
|
||||||
REM Run this on the DOS machine after deploying new files
|
REM Run this on the DOS machine after deploying new files
|
||||||
REM Version: 1.2 - DOS 6.22 compatible (removed brackets, 2>NUL, NUL checks)
|
REM Version: 1.2 - DOS 6.22 compatible (removed brackets, 2>NUL, NUL checks)
|
||||||
REM Last modified: 2026-01-21
|
REM Last modified: 2026-01-21
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO DOS 6.22 Configuration Test Script
|
ECHO DOS 6.22 Configuration Test Script
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM TEST 1: Check MACHINE variable
|
REM TEST 1: Check MACHINE variable
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO (TEST 1) Checking MACHINE variable...
|
ECHO (TEST 1) Checking MACHINE variable...
|
||||||
|
|
||||||
IF "%MACHINE%"=="" GOTO TEST1_FAIL
|
IF "%MACHINE%"=="" GOTO TEST1_FAIL
|
||||||
ECHO OK: MACHINE=%MACHINE%
|
ECHO OK: MACHINE=%MACHINE%
|
||||||
GOTO TEST2
|
GOTO TEST2
|
||||||
|
|
||||||
:TEST1_FAIL
|
:TEST1_FAIL
|
||||||
ECHO FAIL: MACHINE variable not set
|
ECHO FAIL: MACHINE variable not set
|
||||||
ECHO Fix: Add "SET MACHINE=TS-4R" to C:\AUTOEXEC.BAT
|
ECHO Fix: Add "SET MACHINE=TS-4R" to C:\AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO TEST2
|
GOTO TEST2
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM TEST 2: Check required files exist
|
REM TEST 2: Check required files exist
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:TEST2
|
:TEST2
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO (TEST 2) Checking required files...
|
ECHO (TEST 2) Checking required files...
|
||||||
|
|
||||||
IF NOT EXIST C:\AUTOEXEC.BAT ECHO FAIL: C:\AUTOEXEC.BAT missing
|
IF NOT EXIST C:\AUTOEXEC.BAT ECHO FAIL: C:\AUTOEXEC.BAT missing
|
||||||
IF EXIST C:\AUTOEXEC.BAT ECHO OK: C:\AUTOEXEC.BAT exists
|
IF EXIST C:\AUTOEXEC.BAT ECHO OK: C:\AUTOEXEC.BAT exists
|
||||||
|
|
||||||
IF NOT EXIST C:\STARTNET.BAT ECHO FAIL: C:\STARTNET.BAT missing
|
IF NOT EXIST C:\STARTNET.BAT ECHO FAIL: C:\STARTNET.BAT missing
|
||||||
IF EXIST C:\STARTNET.BAT ECHO OK: C:\STARTNET.BAT exists
|
IF EXIST C:\STARTNET.BAT ECHO OK: C:\STARTNET.BAT exists
|
||||||
|
|
||||||
IF NOT EXIST C:\BAT\*.* ECHO WARN: C:\BAT directory missing - run MD C:\BAT
|
IF NOT EXIST C:\BAT\*.* ECHO WARN: C:\BAT directory missing - run MD C:\BAT
|
||||||
IF EXIST C:\BAT\*.* ECHO OK: C:\BAT directory exists
|
IF EXIST C:\BAT\*.* ECHO OK: C:\BAT directory exists
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM TEST 3: Check PATH variable
|
REM TEST 3: Check PATH variable
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO (TEST 3) Checking PATH...
|
ECHO (TEST 3) Checking PATH...
|
||||||
ECHO PATH=%PATH%
|
ECHO PATH=%PATH%
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM TEST 4: Check T: drive
|
REM TEST 4: Check T: drive
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO (TEST 4) Checking T: drive...
|
ECHO (TEST 4) Checking T: drive...
|
||||||
|
|
||||||
IF NOT EXIST T:\*.* GOTO TEST4_FAIL
|
IF NOT EXIST T:\*.* GOTO TEST4_FAIL
|
||||||
|
|
||||||
ECHO OK: T: drive accessible
|
ECHO OK: T: drive accessible
|
||||||
GOTO TEST5
|
GOTO TEST5
|
||||||
|
|
||||||
:TEST4_FAIL
|
:TEST4_FAIL
|
||||||
ECHO FAIL: T: drive not accessible
|
ECHO FAIL: T: drive not accessible
|
||||||
ECHO Fix: Run C:\STARTNET.BAT to map network drives
|
ECHO Fix: Run C:\STARTNET.BAT to map network drives
|
||||||
GOTO TEST5
|
GOTO TEST5
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM TEST 5: Check X: drive
|
REM TEST 5: Check X: drive
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:TEST5
|
:TEST5
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO (TEST 5) Checking X: drive...
|
ECHO (TEST 5) Checking X: drive...
|
||||||
|
|
||||||
IF NOT EXIST X:\*.* GOTO TEST5_FAIL
|
IF NOT EXIST X:\*.* GOTO TEST5_FAIL
|
||||||
|
|
||||||
ECHO OK: X: drive accessible
|
ECHO OK: X: drive accessible
|
||||||
GOTO TEST6
|
GOTO TEST6
|
||||||
|
|
||||||
:TEST5_FAIL
|
:TEST5_FAIL
|
||||||
ECHO FAIL: X: drive not accessible
|
ECHO FAIL: X: drive not accessible
|
||||||
ECHO Fix: Run C:\STARTNET.BAT to map network drives
|
ECHO Fix: Run C:\STARTNET.BAT to map network drives
|
||||||
GOTO TEST6
|
GOTO TEST6
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM TEST 6: Check if backup directory can be created
|
REM TEST 6: Check if backup directory can be created
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:TEST6
|
:TEST6
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO (TEST 6) Checking backup directory creation...
|
ECHO (TEST 6) Checking backup directory creation...
|
||||||
|
|
||||||
IF "%MACHINE%"=="" GOTO TEST6_SKIP
|
IF "%MACHINE%"=="" GOTO TEST6_SKIP
|
||||||
|
|
||||||
REM Only test if T: is available
|
REM Only test if T: is available
|
||||||
IF NOT EXIST T:\*.* GOTO TEST6_SKIP
|
IF NOT EXIST T:\*.* GOTO TEST6_SKIP
|
||||||
|
|
||||||
REM Try to create machine directory
|
REM Try to create machine directory
|
||||||
IF NOT EXIST T:\%MACHINE%\*.* MD T:\%MACHINE%
|
IF NOT EXIST T:\%MACHINE%\*.* MD T:\%MACHINE%
|
||||||
IF NOT EXIST T:\%MACHINE%\*.* GOTO TEST6_FAIL
|
IF NOT EXIST T:\%MACHINE%\*.* GOTO TEST6_FAIL
|
||||||
|
|
||||||
REM Try to create test subdirectory
|
REM Try to create test subdirectory
|
||||||
IF NOT EXIST T:\%MACHINE%\TEST\*.* MD T:\%MACHINE%\TEST
|
IF NOT EXIST T:\%MACHINE%\TEST\*.* MD T:\%MACHINE%\TEST
|
||||||
IF NOT EXIST T:\%MACHINE%\TEST\*.* GOTO TEST6_FAIL
|
IF NOT EXIST T:\%MACHINE%\TEST\*.* GOTO TEST6_FAIL
|
||||||
|
|
||||||
ECHO OK: Can create T:\%MACHINE%\TEST
|
ECHO OK: Can create T:\%MACHINE%\TEST
|
||||||
ECHO OK: Backup directory structure works
|
ECHO OK: Backup directory structure works
|
||||||
|
|
||||||
REM Clean up test directory
|
REM Clean up test directory
|
||||||
RD T:\%MACHINE%\TEST
|
RD T:\%MACHINE%\TEST
|
||||||
|
|
||||||
GOTO SUMMARY
|
GOTO SUMMARY
|
||||||
|
|
||||||
:TEST6_FAIL
|
:TEST6_FAIL
|
||||||
ECHO FAIL: Cannot create directory on T: drive
|
ECHO FAIL: Cannot create directory on T: drive
|
||||||
ECHO Check: T: drive is writable
|
ECHO Check: T: drive is writable
|
||||||
GOTO SUMMARY
|
GOTO SUMMARY
|
||||||
|
|
||||||
:TEST6_SKIP
|
:TEST6_SKIP
|
||||||
ECHO SKIP: Cannot test (T: unavailable or MACHINE not set)
|
ECHO SKIP: Cannot test (T: unavailable or MACHINE not set)
|
||||||
GOTO SUMMARY
|
GOTO SUMMARY
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM SUMMARY
|
REM SUMMARY
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:SUMMARY
|
:SUMMARY
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Test Summary
|
ECHO Test Summary
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
IF "%MACHINE%"=="" GOTO SUMMARY_FAIL
|
IF "%MACHINE%"=="" GOTO SUMMARY_FAIL
|
||||||
IF NOT EXIST C:\BAT\*.* GOTO SUMMARY_FAIL
|
IF NOT EXIST C:\BAT\*.* GOTO SUMMARY_FAIL
|
||||||
IF NOT EXIST T:\*.* GOTO SUMMARY_FAIL
|
IF NOT EXIST T:\*.* GOTO SUMMARY_FAIL
|
||||||
|
|
||||||
ECHO OK: All critical tests passed
|
ECHO OK: All critical tests passed
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Configuration appears correct.
|
ECHO Configuration appears correct.
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Next step: Run UPDATE to test backup
|
ECHO Next step: Run UPDATE to test backup
|
||||||
ECHO C:\>UPDATE
|
ECHO C:\>UPDATE
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:SUMMARY_FAIL
|
:SUMMARY_FAIL
|
||||||
ECHO FAIL: One or more tests failed
|
ECHO FAIL: One or more tests failed
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Please fix the failed tests before running UPDATE
|
ECHO Please fix the failed tests before running UPDATE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Common fixes:
|
ECHO Common fixes:
|
||||||
ECHO 1. Reboot machine (load AUTOEXEC.BAT changes)
|
ECHO 1. Reboot machine (load AUTOEXEC.BAT changes)
|
||||||
ECHO 2. Run C:\STARTNET.BAT (map network drives)
|
ECHO 2. Run C:\STARTNET.BAT (map network drives)
|
||||||
ECHO 3. Check network cable is connected
|
ECHO 3. Check network cable is connected
|
||||||
ECHO 4. Create C:\BAT directory: MD C:\BAT
|
ECHO 4. Create C:\BAT directory: MD C:\BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
:END
|
:END
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|||||||
@@ -29,12 +29,12 @@ IF NOT EXIST C:\NET\*.* MD C:\NET
|
|||||||
REM Check for COMMON updates
|
REM Check for COMMON updates
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\*.* GOTO NO_COMMON
|
IF NOT EXIST T:\COMMON\ProdSW\*.* GOTO NO_COMMON
|
||||||
|
|
||||||
ECHO [1/3] Copying batch files to C:\BAT...
|
ECHO (1/3) Copying batch files to C:\BAT...
|
||||||
COPY T:\COMMON\ProdSW\*.BAT C:\BAT
|
COPY T:\COMMON\ProdSW\*.BAT C:\BAT
|
||||||
ECHO Done
|
ECHO Done
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
ECHO [2/3] Copying ATE data folders to C:\ATE...
|
ECHO (2/3) Copying ATE data folders to C:\ATE...
|
||||||
IF EXIST T:\Ate\ProdSW\5BDATA\*.* COPY T:\Ate\ProdSW\5BDATA\*.* C:\ATE\5BDATA
|
IF EXIST T:\Ate\ProdSW\5BDATA\*.* COPY T:\Ate\ProdSW\5BDATA\*.* C:\ATE\5BDATA
|
||||||
IF EXIST T:\Ate\ProdSW\7BDATA\*.* COPY T:\Ate\ProdSW\7BDATA\*.* C:\ATE\7BDATA
|
IF EXIST T:\Ate\ProdSW\7BDATA\*.* COPY T:\Ate\ProdSW\7BDATA\*.* C:\ATE\7BDATA
|
||||||
IF EXIST T:\Ate\ProdSW\8BDATA\*.* COPY T:\Ate\ProdSW\8BDATA\*.* C:\ATE\8BDATA
|
IF EXIST T:\Ate\ProdSW\8BDATA\*.* COPY T:\Ate\ProdSW\8BDATA\*.* C:\ATE\8BDATA
|
||||||
@@ -49,14 +49,14 @@ ECHO.
|
|||||||
REM Check for network client updates
|
REM Check for network client updates
|
||||||
IF NOT EXIST T:\COMMON\NET\*.* GOTO SKIP_NET
|
IF NOT EXIST T:\COMMON\NET\*.* GOTO SKIP_NET
|
||||||
|
|
||||||
ECHO [3/3] Copying network files to C:\NET...
|
ECHO (3/3) Copying network files to C:\NET...
|
||||||
COPY T:\COMMON\NET\*.* C:\NET
|
COPY T:\COMMON\NET\*.* C:\NET
|
||||||
ECHO Done
|
ECHO Done
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO DONE
|
GOTO DONE
|
||||||
|
|
||||||
:SKIP_NET
|
:SKIP_NET
|
||||||
ECHO [3/3] No network updates
|
ECHO (3/3) No network updates
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
:DONE
|
:DONE
|
||||||
@@ -67,12 +67,12 @@ ECHO.
|
|||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:NO_COMMON
|
:NO_COMMON
|
||||||
ECHO [ERROR] T:\COMMON\ProdSW not found
|
ECHO ERROR: T:\COMMON\ProdSW not found
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:NO_DRIVE
|
:NO_DRIVE
|
||||||
ECHO [ERROR] T: drive not available
|
ECHO ERROR: T: drive not available
|
||||||
ECHO Run C:\STARTNET.BAT first
|
ECHO Run C:\STARTNET.BAT first
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|||||||
@@ -1,133 +1,133 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM NWTOC-DEBUG.BAT - Download with diagnostic pauses
|
REM NWTOCD.BAT - Download with diagnostic pauses (8.3 name)
|
||||||
REM Version: 1.0 - Debug version for recording
|
REM Version: 1.1 - Debug version for recording
|
||||||
REM Last modified: 2026-01-21
|
REM Last modified: 2026-01-21
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO DEBUG: NWTOC - Network to Computer Download
|
ECHO DEBUG: NWTOC - Network to Computer Download
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
ECHO NWTOC Step 0: Verifying prerequisites
|
ECHO NWTOC Step 0: Verifying prerequisites
|
||||||
IF NOT EXIST T:\*.* GOTO NO_DRIVE
|
IF NOT EXIST T:\*.* GOTO NO_DRIVE
|
||||||
ECHO T: drive OK
|
ECHO T: drive OK
|
||||||
IF NOT EXIST T:\COMMON\ProdSW\*.* GOTO NO_COMMON
|
IF NOT EXIST T:\COMMON\ProdSW\*.* GOTO NO_COMMON
|
||||||
ECHO T:\COMMON\ProdSW OK
|
ECHO T:\COMMON\ProdSW OK
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC Step 1: Creating local directories
|
ECHO NWTOC Step 1: Creating local directories
|
||||||
IF NOT EXIST C:\BAT\*.* MD C:\BAT
|
IF NOT EXIST C:\BAT\*.* MD C:\BAT
|
||||||
ECHO C:\BAT ready
|
ECHO C:\BAT ready
|
||||||
IF NOT EXIST C:\ATE\*.* MD C:\ATE
|
IF NOT EXIST C:\ATE\*.* MD C:\ATE
|
||||||
ECHO C:\ATE ready
|
ECHO C:\ATE ready
|
||||||
IF NOT EXIST C:\ATE\5BDATA\*.* MD C:\ATE\5BDATA
|
IF NOT EXIST C:\ATE\5BDATA\*.* MD C:\ATE\5BDATA
|
||||||
IF NOT EXIST C:\ATE\7BDATA\*.* MD C:\ATE\7BDATA
|
IF NOT EXIST C:\ATE\7BDATA\*.* MD C:\ATE\7BDATA
|
||||||
IF NOT EXIST C:\ATE\8BDATA\*.* MD C:\ATE\8BDATA
|
IF NOT EXIST C:\ATE\8BDATA\*.* MD C:\ATE\8BDATA
|
||||||
IF NOT EXIST C:\ATE\DSCDATA\*.* MD C:\ATE\DSCDATA
|
IF NOT EXIST C:\ATE\DSCDATA\*.* MD C:\ATE\DSCDATA
|
||||||
IF NOT EXIST C:\ATE\HVDATA\*.* MD C:\ATE\HVDATA
|
IF NOT EXIST C:\ATE\HVDATA\*.* MD C:\ATE\HVDATA
|
||||||
IF NOT EXIST C:\ATE\PWRDATA\*.* MD C:\ATE\PWRDATA
|
IF NOT EXIST C:\ATE\PWRDATA\*.* MD C:\ATE\PWRDATA
|
||||||
IF NOT EXIST C:\ATE\RMSDATA\*.* MD C:\ATE\RMSDATA
|
IF NOT EXIST C:\ATE\RMSDATA\*.* MD C:\ATE\RMSDATA
|
||||||
IF NOT EXIST C:\ATE\SCTDATA\*.* MD C:\ATE\SCTDATA
|
IF NOT EXIST C:\ATE\SCTDATA\*.* MD C:\ATE\SCTDATA
|
||||||
ECHO C:\ATE subfolders ready
|
ECHO C:\ATE subfolders ready
|
||||||
IF NOT EXIST C:\NET\*.* MD C:\NET
|
IF NOT EXIST C:\NET\*.* MD C:\NET
|
||||||
ECHO C:\NET ready
|
ECHO C:\NET ready
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC Step 2: Downloading batch files to C:\BAT
|
ECHO NWTOC Step 2: Downloading batch files to C:\BAT
|
||||||
IF EXIST T:\COMMON\ProdSW\*.BAT ECHO Found BAT files in T:\COMMON\ProdSW
|
IF EXIST T:\COMMON\ProdSW\*.BAT ECHO Found BAT files in T:\COMMON\ProdSW
|
||||||
COPY T:\COMMON\ProdSW\*.BAT C:\BAT
|
COPY T:\COMMON\ProdSW\*.BAT C:\BAT
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC Step 3: Downloading 5BDATA
|
ECHO NWTOC Step 3: Downloading 5BDATA
|
||||||
IF EXIST T:\Ate\ProdSW\5BDATA\*.* ECHO Found files in T:\Ate\ProdSW\5BDATA
|
IF EXIST T:\Ate\ProdSW\5BDATA\*.* ECHO Found files in T:\Ate\ProdSW\5BDATA
|
||||||
IF EXIST T:\Ate\ProdSW\5BDATA\*.* COPY T:\Ate\ProdSW\5BDATA\*.* C:\ATE\5BDATA
|
IF EXIST T:\Ate\ProdSW\5BDATA\*.* COPY T:\Ate\ProdSW\5BDATA\*.* C:\ATE\5BDATA
|
||||||
IF NOT EXIST T:\Ate\ProdSW\5BDATA\*.* ECHO No files in T:\Ate\ProdSW\5BDATA
|
IF NOT EXIST T:\Ate\ProdSW\5BDATA\*.* ECHO No files in T:\Ate\ProdSW\5BDATA
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC Step 4: Downloading 7BDATA
|
ECHO NWTOC Step 4: Downloading 7BDATA
|
||||||
IF EXIST T:\Ate\ProdSW\7BDATA\*.* ECHO Found files in T:\Ate\ProdSW\7BDATA
|
IF EXIST T:\Ate\ProdSW\7BDATA\*.* ECHO Found files in T:\Ate\ProdSW\7BDATA
|
||||||
IF EXIST T:\Ate\ProdSW\7BDATA\*.* COPY T:\Ate\ProdSW\7BDATA\*.* C:\ATE\7BDATA
|
IF EXIST T:\Ate\ProdSW\7BDATA\*.* COPY T:\Ate\ProdSW\7BDATA\*.* C:\ATE\7BDATA
|
||||||
IF NOT EXIST T:\Ate\ProdSW\7BDATA\*.* ECHO No files in T:\Ate\ProdSW\7BDATA
|
IF NOT EXIST T:\Ate\ProdSW\7BDATA\*.* ECHO No files in T:\Ate\ProdSW\7BDATA
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC Step 5: Downloading 8BDATA
|
ECHO NWTOC Step 5: Downloading 8BDATA
|
||||||
IF EXIST T:\Ate\ProdSW\8BDATA\*.* ECHO Found files in T:\Ate\ProdSW\8BDATA
|
IF EXIST T:\Ate\ProdSW\8BDATA\*.* ECHO Found files in T:\Ate\ProdSW\8BDATA
|
||||||
IF EXIST T:\Ate\ProdSW\8BDATA\*.* COPY T:\Ate\ProdSW\8BDATA\*.* C:\ATE\8BDATA
|
IF EXIST T:\Ate\ProdSW\8BDATA\*.* COPY T:\Ate\ProdSW\8BDATA\*.* C:\ATE\8BDATA
|
||||||
IF NOT EXIST T:\Ate\ProdSW\8BDATA\*.* ECHO No files in T:\Ate\ProdSW\8BDATA
|
IF NOT EXIST T:\Ate\ProdSW\8BDATA\*.* ECHO No files in T:\Ate\ProdSW\8BDATA
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC Step 6: Downloading DSCDATA
|
ECHO NWTOC Step 6: Downloading DSCDATA
|
||||||
IF EXIST T:\Ate\ProdSW\DSCDATA\*.* ECHO Found files in T:\Ate\ProdSW\DSCDATA
|
IF EXIST T:\Ate\ProdSW\DSCDATA\*.* ECHO Found files in T:\Ate\ProdSW\DSCDATA
|
||||||
IF EXIST T:\Ate\ProdSW\DSCDATA\*.* COPY T:\Ate\ProdSW\DSCDATA\*.* C:\ATE\DSCDATA
|
IF EXIST T:\Ate\ProdSW\DSCDATA\*.* COPY T:\Ate\ProdSW\DSCDATA\*.* C:\ATE\DSCDATA
|
||||||
IF NOT EXIST T:\Ate\ProdSW\DSCDATA\*.* ECHO No files in T:\Ate\ProdSW\DSCDATA
|
IF NOT EXIST T:\Ate\ProdSW\DSCDATA\*.* ECHO No files in T:\Ate\ProdSW\DSCDATA
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC Step 7: Downloading HVDATA
|
ECHO NWTOC Step 7: Downloading HVDATA
|
||||||
IF EXIST T:\Ate\ProdSW\HVDATA\*.* ECHO Found files in T:\Ate\ProdSW\HVDATA
|
IF EXIST T:\Ate\ProdSW\HVDATA\*.* ECHO Found files in T:\Ate\ProdSW\HVDATA
|
||||||
IF EXIST T:\Ate\ProdSW\HVDATA\*.* COPY T:\Ate\ProdSW\HVDATA\*.* C:\ATE\HVDATA
|
IF EXIST T:\Ate\ProdSW\HVDATA\*.* COPY T:\Ate\ProdSW\HVDATA\*.* C:\ATE\HVDATA
|
||||||
IF NOT EXIST T:\Ate\ProdSW\HVDATA\*.* ECHO No files in T:\Ate\ProdSW\HVDATA
|
IF NOT EXIST T:\Ate\ProdSW\HVDATA\*.* ECHO No files in T:\Ate\ProdSW\HVDATA
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC Step 8: Downloading PWRDATA
|
ECHO NWTOC Step 8: Downloading PWRDATA
|
||||||
IF EXIST T:\Ate\ProdSW\PWRDATA\*.* ECHO Found files in T:\Ate\ProdSW\PWRDATA
|
IF EXIST T:\Ate\ProdSW\PWRDATA\*.* ECHO Found files in T:\Ate\ProdSW\PWRDATA
|
||||||
IF EXIST T:\Ate\ProdSW\PWRDATA\*.* COPY T:\Ate\ProdSW\PWRDATA\*.* C:\ATE\PWRDATA
|
IF EXIST T:\Ate\ProdSW\PWRDATA\*.* COPY T:\Ate\ProdSW\PWRDATA\*.* C:\ATE\PWRDATA
|
||||||
IF NOT EXIST T:\Ate\ProdSW\PWRDATA\*.* ECHO No files in T:\Ate\ProdSW\PWRDATA
|
IF NOT EXIST T:\Ate\ProdSW\PWRDATA\*.* ECHO No files in T:\Ate\ProdSW\PWRDATA
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC Step 9: Downloading RMSDATA
|
ECHO NWTOC Step 9: Downloading RMSDATA
|
||||||
IF EXIST T:\Ate\ProdSW\RMSDATA\*.* ECHO Found files in T:\Ate\ProdSW\RMSDATA
|
IF EXIST T:\Ate\ProdSW\RMSDATA\*.* ECHO Found files in T:\Ate\ProdSW\RMSDATA
|
||||||
IF EXIST T:\Ate\ProdSW\RMSDATA\*.* COPY T:\Ate\ProdSW\RMSDATA\*.* C:\ATE\RMSDATA
|
IF EXIST T:\Ate\ProdSW\RMSDATA\*.* COPY T:\Ate\ProdSW\RMSDATA\*.* C:\ATE\RMSDATA
|
||||||
IF NOT EXIST T:\Ate\ProdSW\RMSDATA\*.* ECHO No files in T:\Ate\ProdSW\RMSDATA
|
IF NOT EXIST T:\Ate\ProdSW\RMSDATA\*.* ECHO No files in T:\Ate\ProdSW\RMSDATA
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC Step 10: Downloading SCTDATA
|
ECHO NWTOC Step 10: Downloading SCTDATA
|
||||||
IF EXIST T:\Ate\ProdSW\SCTDATA\*.* ECHO Found files in T:\Ate\ProdSW\SCTDATA
|
IF EXIST T:\Ate\ProdSW\SCTDATA\*.* ECHO Found files in T:\Ate\ProdSW\SCTDATA
|
||||||
IF EXIST T:\Ate\ProdSW\SCTDATA\*.* COPY T:\Ate\ProdSW\SCTDATA\*.* C:\ATE\SCTDATA
|
IF EXIST T:\Ate\ProdSW\SCTDATA\*.* COPY T:\Ate\ProdSW\SCTDATA\*.* C:\ATE\SCTDATA
|
||||||
IF NOT EXIST T:\Ate\ProdSW\SCTDATA\*.* ECHO No files in T:\Ate\ProdSW\SCTDATA
|
IF NOT EXIST T:\Ate\ProdSW\SCTDATA\*.* ECHO No files in T:\Ate\ProdSW\SCTDATA
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC Step 11: Checking for network client updates
|
ECHO NWTOC Step 11: Checking for network client updates
|
||||||
IF NOT EXIST T:\COMMON\NET\*.* GOTO SKIP_NET
|
IF NOT EXIST T:\COMMON\NET\*.* GOTO SKIP_NET
|
||||||
ECHO Found files in T:\COMMON\NET
|
ECHO Found files in T:\COMMON\NET
|
||||||
COPY T:\COMMON\NET\*.* C:\NET
|
COPY T:\COMMON\NET\*.* C:\NET
|
||||||
ECHO Network files copied
|
ECHO Network files copied
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO DONE
|
GOTO DONE
|
||||||
|
|
||||||
:SKIP_NET
|
:SKIP_NET
|
||||||
ECHO No network updates in T:\COMMON\NET
|
ECHO No network updates in T:\COMMON\NET
|
||||||
PAUSE
|
PAUSE
|
||||||
|
|
||||||
:DONE
|
:DONE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO NWTOC-DEBUG Complete
|
ECHO NWTOC-DEBUG Complete
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:NO_DRIVE
|
:NO_DRIVE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC ERROR: T: drive not available
|
ECHO NWTOC ERROR: T: drive not available
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:NO_COMMON
|
:NO_COMMON
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO NWTOC ERROR: T:\COMMON\ProdSW not found
|
ECHO NWTOC ERROR: T:\COMMON\ProdSW not found
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:END
|
:END
|
||||||
@@ -1,166 +1,166 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM REBOOT.BAT - Manual system file update script
|
REM REBOOT.BAT - Manual system file update script
|
||||||
REM
|
REM
|
||||||
REM NOTE: This file is normally AUTO-GENERATED by STAGE.BAT
|
REM NOTE: This file is normally AUTO-GENERATED by STAGE.BAT
|
||||||
REM This standalone version is for manual testing/recovery only
|
REM This standalone version is for manual testing/recovery only
|
||||||
REM
|
REM
|
||||||
REM Usage: REBOOT
|
REM Usage: REBOOT
|
||||||
REM
|
REM
|
||||||
REM Applies staged system file updates:
|
REM Applies staged system file updates:
|
||||||
REM C:\AUTOEXEC.NEW ??? C:\AUTOEXEC.BAT
|
REM C:\AUTOEXEC.NEW ??? C:\AUTOEXEC.BAT
|
||||||
REM C:\CONFIG.NEW ??? C:\CONFIG.SYS
|
REM C:\CONFIG.NEW ??? C:\CONFIG.SYS
|
||||||
REM
|
REM
|
||||||
REM Version: 1.0 - DOS 6.22 compatible
|
REM Version: 1.0 - DOS 6.22 compatible
|
||||||
REM Last modified: 2026-01-19
|
REM Last modified: 2026-01-19
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Manual System File Update
|
ECHO Manual System File Update
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM Check if staged files exist
|
REM Check if staged files exist
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
SET HASAUTO=0
|
SET HASAUTO=0
|
||||||
SET HASCONF=0
|
SET HASCONF=0
|
||||||
|
|
||||||
IF EXIST C:\AUTOEXEC.NEW SET HASAUTO=1
|
IF EXIST C:\AUTOEXEC.NEW SET HASAUTO=1
|
||||||
IF EXIST C:\CONFIG.NEW SET HASCONF=1
|
IF EXIST C:\CONFIG.NEW SET HASCONF=1
|
||||||
|
|
||||||
IF "%HASAUTO%"=="0" IF "%HASCONF%"=="0" GOTO NO_UPDATES
|
IF "%HASAUTO%"=="0" IF "%HASCONF%"=="0" GOTO NO_UPDATES
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM Warn user
|
REM Warn user
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO [WARNING] This will replace your current system files:
|
ECHO WARNING: This will replace your current system files:
|
||||||
ECHO.
|
ECHO.
|
||||||
IF "%HASAUTO%"=="1" ECHO C:\AUTOEXEC.BAT will be replaced by C:\AUTOEXEC.NEW
|
IF "%HASAUTO%"=="1" ECHO C:\AUTOEXEC.BAT will be replaced by C:\AUTOEXEC.NEW
|
||||||
IF "%HASCONF%"=="1" ECHO C:\CONFIG.SYS will be replaced by C:\CONFIG.NEW
|
IF "%HASCONF%"=="1" ECHO C:\CONFIG.SYS will be replaced by C:\CONFIG.NEW
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Backups will be saved as .SAV files.
|
ECHO Backups will be saved as .SAV files.
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Press Ctrl+C to cancel, or
|
ECHO Press Ctrl+C to cancel, or
|
||||||
PAUSE
|
PAUSE
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM Backup current files
|
REM Backup current files
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO Creating backups...
|
ECHO Creating backups...
|
||||||
|
|
||||||
IF EXIST C:\AUTOEXEC.BAT COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
|
IF EXIST C:\AUTOEXEC.BAT COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
|
||||||
IF EXIST C:\AUTOEXEC.BAT IF NOT ERRORLEVEL 1 ECHO [OK] C:\AUTOEXEC.BAT ??? C:\AUTOEXEC.SAV
|
IF EXIST C:\AUTOEXEC.BAT IF NOT ERRORLEVEL 1 ECHO (OK) C:\AUTOEXEC.BAT ??? C:\AUTOEXEC.SAV
|
||||||
|
|
||||||
IF EXIST C:\CONFIG.SYS COPY C:\CONFIG.SYS C:\CONFIG.SAV >NUL
|
IF EXIST C:\CONFIG.SYS COPY C:\CONFIG.SYS C:\CONFIG.SAV >NUL
|
||||||
IF EXIST C:\CONFIG.SYS IF NOT ERRORLEVEL 1 ECHO [OK] C:\CONFIG.SYS ??? C:\CONFIG.SAV
|
IF EXIST C:\CONFIG.SYS IF NOT ERRORLEVEL 1 ECHO (OK) C:\CONFIG.SYS ??? C:\CONFIG.SAV
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM Apply updates
|
REM Apply updates
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO Applying updates...
|
ECHO Applying updates...
|
||||||
|
|
||||||
REM Apply AUTOEXEC.NEW
|
REM Apply AUTOEXEC.NEW
|
||||||
IF "%HASAUTO%"=="1" COPY C:\AUTOEXEC.NEW C:\AUTOEXEC.BAT >NUL
|
IF "%HASAUTO%"=="1" COPY C:\AUTOEXEC.NEW C:\AUTOEXEC.BAT >NUL
|
||||||
IF "%HASAUTO%"=="1" IF NOT ERRORLEVEL 1 ECHO [OK] AUTOEXEC.BAT updated
|
IF "%HASAUTO%"=="1" IF NOT ERRORLEVEL 1 ECHO (OK) AUTOEXEC.BAT updated
|
||||||
IF "%HASAUTO%"=="1" IF ERRORLEVEL 1 ECHO [ERROR] AUTOEXEC.BAT update failed
|
IF "%HASAUTO%"=="1" IF ERRORLEVEL 1 ECHO ERROR: AUTOEXEC.BAT update failed
|
||||||
IF "%HASAUTO%"=="1" IF ERRORLEVEL 1 GOTO UPDATE_ERROR
|
IF "%HASAUTO%"=="1" IF ERRORLEVEL 1 GOTO UPDATE_ERROR
|
||||||
|
|
||||||
REM Apply CONFIG.NEW
|
REM Apply CONFIG.NEW
|
||||||
IF "%HASCONF%"=="1" COPY C:\CONFIG.NEW C:\CONFIG.SYS >NUL
|
IF "%HASCONF%"=="1" COPY C:\CONFIG.NEW C:\CONFIG.SYS >NUL
|
||||||
IF "%HASCONF%"=="1" IF NOT ERRORLEVEL 1 ECHO [OK] CONFIG.SYS updated
|
IF "%HASCONF%"=="1" IF NOT ERRORLEVEL 1 ECHO (OK) CONFIG.SYS updated
|
||||||
IF "%HASCONF%"=="1" IF ERRORLEVEL 1 ECHO [ERROR] CONFIG.SYS update failed
|
IF "%HASCONF%"=="1" IF ERRORLEVEL 1 ECHO ERROR: CONFIG.SYS update failed
|
||||||
IF "%HASCONF%"=="1" IF ERRORLEVEL 1 GOTO UPDATE_ERROR
|
IF "%HASCONF%"=="1" IF ERRORLEVEL 1 GOTO UPDATE_ERROR
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM Clean up staging files
|
REM Clean up staging files
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO Cleaning up staging files...
|
ECHO Cleaning up staging files...
|
||||||
|
|
||||||
IF EXIST C:\AUTOEXEC.NEW DEL C:\AUTOEXEC.NEW
|
IF EXIST C:\AUTOEXEC.NEW DEL C:\AUTOEXEC.NEW
|
||||||
IF EXIST C:\CONFIG.NEW DEL C:\CONFIG.NEW
|
IF EXIST C:\CONFIG.NEW DEL C:\CONFIG.NEW
|
||||||
|
|
||||||
ECHO [OK] Staging files deleted
|
ECHO (OK) Staging files deleted
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM Success
|
REM Success
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO System Files Updated Successfully
|
ECHO System Files Updated Successfully
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Updated files:
|
ECHO Updated files:
|
||||||
IF "%HASAUTO%"=="1" ECHO - C:\AUTOEXEC.BAT
|
IF "%HASAUTO%"=="1" ECHO - C:\AUTOEXEC.BAT
|
||||||
IF "%HASCONF%"=="1" ECHO - C:\CONFIG.SYS
|
IF "%HASCONF%"=="1" ECHO - C:\CONFIG.SYS
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Backup files saved:
|
ECHO Backup files saved:
|
||||||
ECHO - C:\AUTOEXEC.SAV (previous AUTOEXEC.BAT)
|
ECHO - C:\AUTOEXEC.SAV (previous AUTOEXEC.BAT)
|
||||||
ECHO - C:\CONFIG.SAV (previous CONFIG.SYS)
|
ECHO - C:\CONFIG.SAV (previous CONFIG.SYS)
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO To activate changes:
|
ECHO To activate changes:
|
||||||
ECHO Reboot the computer (Ctrl+Alt+Del)
|
ECHO Reboot the computer (Ctrl+Alt+Del)
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO To rollback changes:
|
ECHO To rollback changes:
|
||||||
ECHO COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT
|
ECHO COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT
|
||||||
ECHO COPY C:\CONFIG.SAV C:\CONFIG.SYS
|
ECHO COPY C:\CONFIG.SAV C:\CONFIG.SYS
|
||||||
ECHO Then reboot
|
ECHO Then reboot
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM ERROR HANDLERS
|
REM ERROR HANDLERS
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:NO_UPDATES
|
:NO_UPDATES
|
||||||
ECHO [WARNING] No staged update files found
|
ECHO WARNING: No staged update files found
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Expected files:
|
ECHO Expected files:
|
||||||
ECHO C:\AUTOEXEC.NEW (not found)
|
ECHO C:\AUTOEXEC.NEW (not found)
|
||||||
ECHO C:\CONFIG.NEW (not found)
|
ECHO C:\CONFIG.NEW (not found)
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Run NWTOC to download updates from network, then:
|
ECHO Run NWTOC to download updates from network, then:
|
||||||
ECHO CALL C:\BAT\STAGE.BAT
|
ECHO CALL C:\BAT\STAGE.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:UPDATE_ERROR
|
:UPDATE_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Update failed
|
ECHO ERROR: Update failed
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Your system may be in an inconsistent state.
|
ECHO Your system may be in an inconsistent state.
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Recovery steps:
|
ECHO Recovery steps:
|
||||||
ECHO 1. COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT
|
ECHO 1. COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT
|
||||||
ECHO 2. COPY C:\CONFIG.SAV C:\CONFIG.SYS
|
ECHO 2. COPY C:\CONFIG.SAV C:\CONFIG.SYS
|
||||||
ECHO 3. Reboot (Ctrl+Alt+Del)
|
ECHO 3. Reboot (Ctrl+Alt+Del)
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO If system won't boot:
|
ECHO If system won't boot:
|
||||||
ECHO 1. Boot from DOS floppy
|
ECHO 1. Boot from DOS floppy
|
||||||
ECHO 2. Copy .SAV files back to .BAT and .SYS
|
ECHO 2. Copy .SAV files back to .BAT and .SYS
|
||||||
ECHO 3. Remove floppy and reboot
|
ECHO 3. Remove floppy and reboot
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM CLEANUP AND EXIT
|
REM CLEANUP AND EXIT
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:END
|
:END
|
||||||
SET HASAUTO=
|
SET HASAUTO=
|
||||||
SET HASCONF=
|
SET HASCONF=
|
||||||
|
|||||||
@@ -1,245 +1,245 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM STAGE.BAT - Stage system files for update after reboot
|
REM STAGE.BAT - Stage system files for update after reboot
|
||||||
REM Called by NWTOC.BAT when AUTOEXEC.NEW or CONFIG.NEW are detected
|
REM Called by NWTOC.BAT when AUTOEXEC.NEW or CONFIG.NEW are detected
|
||||||
REM
|
REM
|
||||||
REM This script:
|
REM This script:
|
||||||
REM 1. Verifies staged files exist (C:\AUTOEXEC.NEW, C:\CONFIG.NEW)
|
REM 1. Verifies staged files exist (C:\AUTOEXEC.NEW, C:\CONFIG.NEW)
|
||||||
REM 2. Backs up current AUTOEXEC.BAT to C:\AUTOEXEC.SAV
|
REM 2. Backs up current AUTOEXEC.BAT to C:\AUTOEXEC.SAV
|
||||||
REM 3. Creates REBOOT.BAT to apply changes after reboot
|
REM 3. Creates REBOOT.BAT to apply changes after reboot
|
||||||
REM 4. Modifies AUTOEXEC.BAT to call REBOOT.BAT once on next boot
|
REM 4. Modifies AUTOEXEC.BAT to call REBOOT.BAT once on next boot
|
||||||
REM 5. Instructs user to reboot
|
REM 5. Instructs user to reboot
|
||||||
REM
|
REM
|
||||||
REM Version: 1.0 - DOS 6.22 compatible
|
REM Version: 1.0 - DOS 6.22 compatible
|
||||||
REM Last modified: 2026-01-19
|
REM Last modified: 2026-01-19
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 1: Verify staged files exist
|
REM STEP 1: Verify staged files exist
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
SET HASAUTO=0
|
SET HASAUTO=0
|
||||||
SET HASCONF=0
|
SET HASCONF=0
|
||||||
|
|
||||||
IF EXIST C:\AUTOEXEC.NEW SET HASAUTO=1
|
IF EXIST C:\AUTOEXEC.NEW SET HASAUTO=1
|
||||||
IF EXIST C:\CONFIG.NEW SET HASCONF=1
|
IF EXIST C:\CONFIG.NEW SET HASCONF=1
|
||||||
|
|
||||||
REM Check if any updates need staging
|
REM Check if any updates need staging
|
||||||
IF "%HASAUTO%"=="0" IF "%HASCONF%"=="0" GOTO NO_UPDATES
|
IF "%HASAUTO%"=="0" IF "%HASCONF%"=="0" GOTO NO_UPDATES
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Staging System File Updates
|
ECHO Staging System File Updates
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
|
|
||||||
IF "%HASAUTO%"=="1" ECHO [STAGED] C:\AUTOEXEC.NEW ??? Will replace AUTOEXEC.BAT
|
IF "%HASAUTO%"=="1" ECHO (STAGED) C:\AUTOEXEC.NEW ??? Will replace AUTOEXEC.BAT
|
||||||
IF "%HASCONF%"=="1" ECHO [STAGED] C:\CONFIG.NEW ??? Will replace CONFIG.SYS
|
IF "%HASCONF%"=="1" ECHO (STAGED) C:\CONFIG.NEW ??? Will replace CONFIG.SYS
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 2: Backup current AUTOEXEC.BAT
|
REM STEP 2: Backup current AUTOEXEC.BAT
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO [1/3] Backing up current system files...
|
ECHO (1/3) Backing up current system files...
|
||||||
|
|
||||||
REM Check if AUTOEXEC.BAT exists
|
REM Check if AUTOEXEC.BAT exists
|
||||||
IF NOT EXIST C:\AUTOEXEC.BAT GOTO NO_AUTOEXEC
|
IF NOT EXIST C:\AUTOEXEC.BAT GOTO NO_AUTOEXEC
|
||||||
|
|
||||||
REM Create backup
|
REM Create backup
|
||||||
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
|
COPY C:\AUTOEXEC.BAT C:\AUTOEXEC.SAV >NUL
|
||||||
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
|
IF ERRORLEVEL 1 GOTO BACKUP_ERROR
|
||||||
|
|
||||||
ECHO [OK] C:\AUTOEXEC.BAT ??? C:\AUTOEXEC.SAV
|
ECHO (OK) C:\AUTOEXEC.BAT ??? C:\AUTOEXEC.SAV
|
||||||
|
|
||||||
REM Also backup CONFIG.SYS if it exists
|
REM Also backup CONFIG.SYS if it exists
|
||||||
IF EXIST C:\CONFIG.SYS COPY C:\CONFIG.SYS C:\CONFIG.SAV >NUL
|
IF EXIST C:\CONFIG.SYS COPY C:\CONFIG.SYS C:\CONFIG.SAV >NUL
|
||||||
IF EXIST C:\CONFIG.SYS IF NOT ERRORLEVEL 1 ECHO [OK] C:\CONFIG.SYS ??? C:\CONFIG.SAV
|
IF EXIST C:\CONFIG.SYS IF NOT ERRORLEVEL 1 ECHO (OK) C:\CONFIG.SYS ??? C:\CONFIG.SAV
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 3: Create REBOOT.BAT
|
REM STEP 3: Create REBOOT.BAT
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO [2/3] Creating reboot update script...
|
ECHO (2/3) Creating reboot update script...
|
||||||
|
|
||||||
REM Create C:\BAT directory if it doesn't exist
|
REM Create C:\BAT directory if it doesn't exist
|
||||||
IF NOT EXIST C:\BAT\NUL MD C:\BAT
|
IF NOT EXIST C:\BAT\NUL MD C:\BAT
|
||||||
|
|
||||||
REM Create REBOOT.BAT - this runs once after reboot
|
REM Create REBOOT.BAT - this runs once after reboot
|
||||||
ECHO @ECHO OFF > C:\BAT\REBOOT.BAT
|
ECHO @ECHO OFF > C:\BAT\REBOOT.BAT
|
||||||
ECHO REM REBOOT.BAT - Apply staged system updates (AUTO-GENERATED) >> C:\BAT\REBOOT.BAT
|
ECHO REM REBOOT.BAT - Apply staged system updates (AUTO-GENERATED) >> C:\BAT\REBOOT.BAT
|
||||||
ECHO REM This file is automatically deleted after running >> C:\BAT\REBOOT.BAT
|
ECHO REM This file is automatically deleted after running >> C:\BAT\REBOOT.BAT
|
||||||
ECHO. >> C:\BAT\REBOOT.BAT
|
ECHO. >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
|
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO Applying System Updates >> C:\BAT\REBOOT.BAT
|
ECHO ECHO Applying System Updates >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
|
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
||||||
ECHO. >> C:\BAT\REBOOT.BAT
|
ECHO. >> C:\BAT\REBOOT.BAT
|
||||||
|
|
||||||
REM Apply AUTOEXEC.NEW if it exists
|
REM Apply AUTOEXEC.NEW if it exists
|
||||||
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW ECHO [1/2] Updating AUTOEXEC.BAT... >> C:\BAT\REBOOT.BAT
|
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW ECHO (1/2) Updating AUTOEXEC.BAT... >> C:\BAT\REBOOT.BAT
|
||||||
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW COPY C:\AUTOEXEC.NEW C:\AUTOEXEC.BAT ^>NUL >> C:\BAT\REBOOT.BAT
|
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW COPY C:\AUTOEXEC.NEW C:\AUTOEXEC.BAT ^>NUL >> C:\BAT\REBOOT.BAT
|
||||||
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW IF NOT ERRORLEVEL 1 ECHO [OK] AUTOEXEC.BAT updated >> C:\BAT\REBOOT.BAT
|
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW IF NOT ERRORLEVEL 1 ECHO (OK) AUTOEXEC.BAT updated >> C:\BAT\REBOOT.BAT
|
||||||
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW IF ERRORLEVEL 1 ECHO [ERROR] AUTOEXEC.BAT update failed >> C:\BAT\REBOOT.BAT
|
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW IF ERRORLEVEL 1 ECHO ERROR: AUTOEXEC.BAT update failed >> C:\BAT\REBOOT.BAT
|
||||||
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW DEL C:\AUTOEXEC.NEW >> C:\BAT\REBOOT.BAT
|
IF "%HASAUTO%"=="1" ECHO IF EXIST C:\AUTOEXEC.NEW DEL C:\AUTOEXEC.NEW >> C:\BAT\REBOOT.BAT
|
||||||
IF "%HASAUTO%"=="1" ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
IF "%HASAUTO%"=="1" ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
||||||
|
|
||||||
REM Apply CONFIG.NEW if it exists
|
REM Apply CONFIG.NEW if it exists
|
||||||
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW ECHO [2/2] Updating CONFIG.SYS... >> C:\BAT\REBOOT.BAT
|
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW ECHO (2/2) Updating CONFIG.SYS... >> C:\BAT\REBOOT.BAT
|
||||||
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW COPY C:\CONFIG.NEW C:\CONFIG.SYS ^>NUL >> C:\BAT\REBOOT.BAT
|
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW COPY C:\CONFIG.NEW C:\CONFIG.SYS ^>NUL >> C:\BAT\REBOOT.BAT
|
||||||
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW IF NOT ERRORLEVEL 1 ECHO [OK] CONFIG.SYS updated >> C:\BAT\REBOOT.BAT
|
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW IF NOT ERRORLEVEL 1 ECHO (OK) CONFIG.SYS updated >> C:\BAT\REBOOT.BAT
|
||||||
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW IF ERRORLEVEL 1 ECHO [ERROR] CONFIG.SYS update failed >> C:\BAT\REBOOT.BAT
|
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW IF ERRORLEVEL 1 ECHO ERROR: CONFIG.SYS update failed >> C:\BAT\REBOOT.BAT
|
||||||
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW DEL C:\CONFIG.NEW >> C:\BAT\REBOOT.BAT
|
IF "%HASCONF%"=="1" ECHO IF EXIST C:\CONFIG.NEW DEL C:\CONFIG.NEW >> C:\BAT\REBOOT.BAT
|
||||||
IF "%HASCONF%"=="1" ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
IF "%HASCONF%"=="1" ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
||||||
|
|
||||||
REM Delete REBOOT.BAT after running
|
REM Delete REBOOT.BAT after running
|
||||||
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
|
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO System Updates Applied >> C:\BAT\REBOOT.BAT
|
ECHO ECHO System Updates Applied >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
|
ECHO ECHO ============================================================== >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO Rollback files available: >> C:\BAT\REBOOT.BAT
|
ECHO ECHO Rollback files available: >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO C:\AUTOEXEC.SAV - Previous AUTOEXEC.BAT >> C:\BAT\REBOOT.BAT
|
ECHO ECHO C:\AUTOEXEC.SAV - Previous AUTOEXEC.BAT >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO C:\CONFIG.SAV - Previous CONFIG.SYS >> C:\BAT\REBOOT.BAT
|
ECHO ECHO C:\CONFIG.SAV - Previous CONFIG.SYS >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO To rollback, run: >> C:\BAT\REBOOT.BAT
|
ECHO ECHO To rollback, run: >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT >> C:\BAT\REBOOT.BAT
|
ECHO ECHO COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO COPY C:\CONFIG.SAV C:\CONFIG.SYS >> C:\BAT\REBOOT.BAT
|
ECHO ECHO COPY C:\CONFIG.SAV C:\CONFIG.SYS >> C:\BAT\REBOOT.BAT
|
||||||
ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
ECHO ECHO. >> C:\BAT\REBOOT.BAT
|
||||||
ECHO PAUSE Press any key to continue boot... >> C:\BAT\REBOOT.BAT
|
ECHO PAUSE Press any key to continue boot... >> C:\BAT\REBOOT.BAT
|
||||||
ECHO. >> C:\BAT\REBOOT.BAT
|
ECHO. >> C:\BAT\REBOOT.BAT
|
||||||
ECHO REM Delete this script >> C:\BAT\REBOOT.BAT
|
ECHO REM Delete this script >> C:\BAT\REBOOT.BAT
|
||||||
ECHO DEL C:\BAT\REBOOT.BAT >> C:\BAT\REBOOT.BAT
|
ECHO DEL C:\BAT\REBOOT.BAT >> C:\BAT\REBOOT.BAT
|
||||||
|
|
||||||
IF NOT EXIST C:\BAT\REBOOT.BAT GOTO CREATE_ERROR
|
IF NOT EXIST C:\BAT\REBOOT.BAT GOTO CREATE_ERROR
|
||||||
|
|
||||||
ECHO [OK] C:\BAT\REBOOT.BAT created
|
ECHO (OK) C:\BAT\REBOOT.BAT created
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 4: Modify AUTOEXEC.BAT to call REBOOT.BAT once
|
REM STEP 4: Modify AUTOEXEC.BAT to call REBOOT.BAT once
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO [3/3] Modifying AUTOEXEC.BAT for one-time reboot update...
|
ECHO (3/3) Modifying AUTOEXEC.BAT for one-time reboot update...
|
||||||
|
|
||||||
REM Create temporary file with REBOOT.BAT call at the top
|
REM Create temporary file with REBOOT.BAT call at the top
|
||||||
ECHO @ECHO OFF > C:\AUTOEXEC.TMP
|
ECHO @ECHO OFF > C:\AUTOEXEC.TMP
|
||||||
ECHO REM One-time system update on next reboot >> C:\AUTOEXEC.TMP
|
ECHO REM One-time system update on next reboot >> C:\AUTOEXEC.TMP
|
||||||
ECHO IF EXIST C:\BAT\REBOOT.BAT CALL C:\BAT\REBOOT.BAT >> C:\AUTOEXEC.TMP
|
ECHO IF EXIST C:\BAT\REBOOT.BAT CALL C:\BAT\REBOOT.BAT >> C:\AUTOEXEC.TMP
|
||||||
ECHO. >> C:\AUTOEXEC.TMP
|
ECHO. >> C:\AUTOEXEC.TMP
|
||||||
|
|
||||||
REM Append current AUTOEXEC.BAT contents (skip first @ECHO OFF line)
|
REM Append current AUTOEXEC.BAT contents (skip first @ECHO OFF line)
|
||||||
REM DOS 6.22: Use TYPE and redirect (simple copy preserves all lines)
|
REM DOS 6.22: Use TYPE and redirect (simple copy preserves all lines)
|
||||||
TYPE C:\AUTOEXEC.BAT >> C:\AUTOEXEC.TMP
|
TYPE C:\AUTOEXEC.BAT >> C:\AUTOEXEC.TMP
|
||||||
|
|
||||||
REM Replace AUTOEXEC.BAT with modified version
|
REM Replace AUTOEXEC.BAT with modified version
|
||||||
COPY C:\AUTOEXEC.TMP C:\AUTOEXEC.BAT >NUL
|
COPY C:\AUTOEXEC.TMP C:\AUTOEXEC.BAT >NUL
|
||||||
IF ERRORLEVEL 1 GOTO MODIFY_ERROR
|
IF ERRORLEVEL 1 GOTO MODIFY_ERROR
|
||||||
|
|
||||||
REM Clean up temporary file
|
REM Clean up temporary file
|
||||||
DEL C:\AUTOEXEC.TMP
|
DEL C:\AUTOEXEC.TMP
|
||||||
|
|
||||||
ECHO [OK] AUTOEXEC.BAT modified to run update on next boot
|
ECHO (OK) AUTOEXEC.BAT modified to run update on next boot
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 5: Instruct user to reboot
|
REM STEP 5: Instruct user to reboot
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO REBOOT REQUIRED
|
ECHO REBOOT REQUIRED
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO System files have been staged for update.
|
ECHO System files have been staged for update.
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO On next boot, AUTOEXEC.BAT will automatically:
|
ECHO On next boot, AUTOEXEC.BAT will automatically:
|
||||||
ECHO 1. Apply AUTOEXEC.NEW and/or CONFIG.NEW
|
ECHO 1. Apply AUTOEXEC.NEW and/or CONFIG.NEW
|
||||||
ECHO 2. Delete staging files
|
ECHO 2. Delete staging files
|
||||||
ECHO 3. Continue normal boot
|
ECHO 3. Continue normal boot
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO To apply updates now:
|
ECHO To apply updates now:
|
||||||
ECHO 1. Press Ctrl+Alt+Del to reboot
|
ECHO 1. Press Ctrl+Alt+Del to reboot
|
||||||
ECHO 2. Or type: EXIT and reboot from DOS prompt
|
ECHO 2. Or type: EXIT and reboot from DOS prompt
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO To cancel update:
|
ECHO To cancel update:
|
||||||
ECHO 1. Delete C:\AUTOEXEC.NEW
|
ECHO 1. Delete C:\AUTOEXEC.NEW
|
||||||
ECHO 2. Delete C:\CONFIG.NEW
|
ECHO 2. Delete C:\CONFIG.NEW
|
||||||
ECHO 3. Delete C:\BAT\REBOOT.BAT
|
ECHO 3. Delete C:\BAT\REBOOT.BAT
|
||||||
ECHO 4. Restore C:\AUTOEXEC.BAT from C:\AUTOEXEC.SAV
|
ECHO 4. Restore C:\AUTOEXEC.BAT from C:\AUTOEXEC.SAV
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM ERROR HANDLERS
|
REM ERROR HANDLERS
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:NO_UPDATES
|
:NO_UPDATES
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [WARNING] No staged update files found
|
ECHO WARNING: No staged update files found
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Expected files:
|
ECHO Expected files:
|
||||||
ECHO C:\AUTOEXEC.NEW (not found)
|
ECHO C:\AUTOEXEC.NEW (not found)
|
||||||
ECHO C:\CONFIG.NEW (not found)
|
ECHO C:\CONFIG.NEW (not found)
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Run NWTOC to download updates from network.
|
ECHO Run NWTOC to download updates from network.
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:NO_AUTOEXEC
|
:NO_AUTOEXEC
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] C:\AUTOEXEC.BAT not found
|
ECHO ERROR: C:\AUTOEXEC.BAT not found
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Cannot stage updates without existing AUTOEXEC.BAT
|
ECHO Cannot stage updates without existing AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:BACKUP_ERROR
|
:BACKUP_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Failed to create backup
|
ECHO ERROR: Failed to create backup
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Could not copy C:\AUTOEXEC.BAT to C:\AUTOEXEC.SAV
|
ECHO Could not copy C:\AUTOEXEC.BAT to C:\AUTOEXEC.SAV
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - Sufficient disk space on C:
|
ECHO - Sufficient disk space on C:
|
||||||
ECHO - C: drive is not write-protected
|
ECHO - C: drive is not write-protected
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:CREATE_ERROR
|
:CREATE_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Failed to create C:\BAT\REBOOT.BAT
|
ECHO ERROR: Failed to create C:\BAT\REBOOT.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - C:\BAT directory exists
|
ECHO - C:\BAT directory exists
|
||||||
ECHO - Sufficient disk space on C:
|
ECHO - Sufficient disk space on C:
|
||||||
ECHO - C: drive is not write-protected
|
ECHO - C: drive is not write-protected
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:MODIFY_ERROR
|
:MODIFY_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Failed to modify AUTOEXEC.BAT
|
ECHO ERROR: Failed to modify AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO AUTOEXEC.BAT may be corrupted!
|
ECHO AUTOEXEC.BAT may be corrupted!
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Recovery:
|
ECHO Recovery:
|
||||||
ECHO COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT
|
ECHO COPY C:\AUTOEXEC.SAV C:\AUTOEXEC.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM CLEANUP AND EXIT
|
REM CLEANUP AND EXIT
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:END
|
:END
|
||||||
REM Clean up environment variables
|
REM Clean up environment variables
|
||||||
SET HASAUTO=
|
SET HASAUTO=
|
||||||
SET HASCONF=
|
SET HASCONF=
|
||||||
|
|||||||
@@ -1,75 +1,75 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM STARTNET.BAT - Start Microsoft Network Client and map drives
|
REM STARTNET.BAT - Start Microsoft Network Client and map drives
|
||||||
REM Called from AUTOEXEC.BAT
|
REM Called from AUTOEXEC.BAT
|
||||||
REM
|
REM
|
||||||
REM Version: 2.0
|
REM Version: 2.0
|
||||||
REM Last modified: 2026-01-19
|
REM Last modified: 2026-01-19
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 1: Start network client
|
REM STEP 1: Start network client
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
REM Load network protocols and drivers
|
REM Load network protocols and drivers
|
||||||
REM This starts the Microsoft Network Client that was loaded via CONFIG.SYS
|
REM This starts the Microsoft Network Client that was loaded via CONFIG.SYS
|
||||||
NET START
|
NET START
|
||||||
|
|
||||||
REM Check if NET START succeeded
|
REM Check if NET START succeeded
|
||||||
IF ERRORLEVEL 1 GOTO NET_START_FAILED
|
IF ERRORLEVEL 1 GOTO NET_START_FAILED
|
||||||
|
|
||||||
ECHO [OK] Network client started
|
ECHO (OK) Network client started
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 2: Map network drives
|
REM STEP 2: Map network drives
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
REM Map T: to test share (SMB1 compatible)
|
REM Map T: to test share (SMB1 compatible)
|
||||||
REM /YES = Don't prompt for confirmation
|
REM /YES = Don't prompt for confirmation
|
||||||
NET USE T: \\D2TESTNAS\test /YES
|
NET USE T: \\D2TESTNAS\test /YES
|
||||||
IF ERRORLEVEL 1 GOTO T_DRIVE_FAILED
|
IF ERRORLEVEL 1 GOTO T_DRIVE_FAILED
|
||||||
|
|
||||||
ECHO [OK] T: mapped to \\D2TESTNAS\test
|
ECHO (OK) T: mapped to \\D2TESTNAS\test
|
||||||
|
|
||||||
REM Map X: to datasheets share
|
REM Map X: to datasheets share
|
||||||
NET USE X: \\D2TESTNAS\datasheets /YES
|
NET USE X: \\D2TESTNAS\datasheets /YES
|
||||||
IF ERRORLEVEL 1 GOTO X_DRIVE_FAILED
|
IF ERRORLEVEL 1 GOTO X_DRIVE_FAILED
|
||||||
|
|
||||||
ECHO [OK] X: mapped to \\D2TESTNAS\datasheets
|
ECHO (OK) X: mapped to \\D2TESTNAS\datasheets
|
||||||
|
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM ERROR HANDLERS
|
REM ERROR HANDLERS
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:NET_START_FAILED
|
:NET_START_FAILED
|
||||||
ECHO [ERROR] Network client failed to start
|
ECHO ERROR: Network client failed to start
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - Network cable is connected
|
ECHO - Network cable is connected
|
||||||
ECHO - CONFIG.SYS has correct network drivers
|
ECHO - CONFIG.SYS has correct network drivers
|
||||||
ECHO - PROTOCOL.INI is configured correctly
|
ECHO - PROTOCOL.INI is configured correctly
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:T_DRIVE_FAILED
|
:T_DRIVE_FAILED
|
||||||
ECHO [ERROR] Failed to map T: drive
|
ECHO ERROR: Failed to map T: drive
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - Server \\D2TESTNAS is online
|
ECHO - Server \\D2TESTNAS is online
|
||||||
ECHO - Share \\D2TESTNAS\test exists
|
ECHO - Share \\D2TESTNAS\test exists
|
||||||
ECHO - Network connectivity to 172.16.3.0/24 network
|
ECHO - Network connectivity to 172.16.3.0/24 network
|
||||||
ECHO - SMB1 protocol enabled on NAS
|
ECHO - SMB1 protocol enabled on NAS
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:X_DRIVE_FAILED
|
:X_DRIVE_FAILED
|
||||||
ECHO [ERROR] Failed to map X: drive
|
ECHO ERROR: Failed to map X: drive
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - Server \\D2TESTNAS is online
|
ECHO - Server \\D2TESTNAS is online
|
||||||
ECHO - Share \\D2TESTNAS\datasheets exists
|
ECHO - Share \\D2TESTNAS\datasheets exists
|
||||||
ECHO.
|
ECHO.
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:END
|
:END
|
||||||
REM Return to AUTOEXEC.BAT
|
REM Return to AUTOEXEC.BAT
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM Quick test to run updated NWTOC from network
|
REM Quick test to run updated NWTOC from network
|
||||||
REM Run this on TS-4R to get latest version
|
REM Run this on TS-4R to get latest version
|
||||||
ECHO Running updated NWTOC from T:\COMMON\ProdSW...
|
ECHO Running updated NWTOC from T:\COMMON\ProdSW...
|
||||||
CALL T:\COMMON\ProdSW\NWTOC.BAT
|
CALL T:\COMMON\ProdSW\NWTOC.BAT
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ IF NOT "%MACHINE%"=="" GOTO USE_ENV
|
|||||||
|
|
||||||
:NO_MACHINE
|
:NO_MACHINE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Machine name not specified
|
ECHO ERROR: Machine name not specified
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Usage: UPDATE machine-name
|
ECHO Usage: UPDATE machine-name
|
||||||
ECHO Example: UPDATE TS-4R
|
ECHO Example: UPDATE TS-4R
|
||||||
@@ -47,12 +47,12 @@ ECHO Checking network drive T:...
|
|||||||
REM DOS 6.22: Direct file test is most reliable
|
REM DOS 6.22: Direct file test is most reliable
|
||||||
IF NOT EXIST T:\*.* GOTO NO_T_DRIVE
|
IF NOT EXIST T:\*.* GOTO NO_T_DRIVE
|
||||||
|
|
||||||
ECHO [OK] T: drive accessible
|
ECHO (OK) T: drive accessible
|
||||||
GOTO START_BACKUP
|
GOTO START_BACKUP
|
||||||
|
|
||||||
:NO_T_DRIVE
|
:NO_T_DRIVE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] T: drive not available
|
ECHO ERROR: T: drive not available
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Network drive T: must be mapped to \\D2TESTNAS\test
|
ECHO Network drive T: must be mapped to \\D2TESTNAS\test
|
||||||
ECHO.
|
ECHO.
|
||||||
@@ -87,7 +87,7 @@ IF NOT EXIST T:\%MACHINE%\BACKUP\NUL MD T:\%MACHINE%\BACKUP
|
|||||||
REM Check if backup directory was created successfully
|
REM Check if backup directory was created successfully
|
||||||
IF NOT EXIST T:\%MACHINE%\BACKUP\*.* GOTO BACKUP_DIR_ERROR
|
IF NOT EXIST T:\%MACHINE%\BACKUP\*.* GOTO BACKUP_DIR_ERROR
|
||||||
|
|
||||||
ECHO [OK] Backup directory ready
|
ECHO (OK) Backup directory ready
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
@@ -124,7 +124,7 @@ IF ERRORLEVEL 2 GOTO USER_ABORT
|
|||||||
IF ERRORLEVEL 1 GOTO NO_FILES
|
IF ERRORLEVEL 1 GOTO NO_FILES
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [OK] Backup completed successfully
|
ECHO (OK) Backup completed successfully
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Files backed up to: T:\%MACHINE%\BACKUP
|
ECHO Files backed up to: T:\%MACHINE%\BACKUP
|
||||||
GOTO END
|
GOTO END
|
||||||
@@ -135,7 +135,7 @@ REM ==================================================================
|
|||||||
|
|
||||||
:BACKUP_DIR_ERROR
|
:BACKUP_DIR_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Could not create backup directory
|
ECHO ERROR: Could not create backup directory
|
||||||
ECHO Target: T:\%MACHINE%\BACKUP
|
ECHO Target: T:\%MACHINE%\BACKUP
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
@@ -148,7 +148,7 @@ GOTO END
|
|||||||
|
|
||||||
:DISK_ERROR
|
:DISK_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Disk write error
|
ECHO ERROR: Disk write error
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Possible causes:
|
ECHO Possible causes:
|
||||||
ECHO - Target drive is full
|
ECHO - Target drive is full
|
||||||
@@ -160,7 +160,7 @@ GOTO END
|
|||||||
|
|
||||||
:INIT_ERROR
|
:INIT_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [ERROR] Backup initialization failed
|
ECHO ERROR: Backup initialization failed
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Possible causes:
|
ECHO Possible causes:
|
||||||
ECHO - Insufficient memory
|
ECHO - Insufficient memory
|
||||||
@@ -172,7 +172,7 @@ GOTO END
|
|||||||
|
|
||||||
:USER_ABORT
|
:USER_ABORT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [WARNING] Backup terminated by user (Ctrl+C)
|
ECHO WARNING: Backup terminated by user (Ctrl+C)
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Backup may be incomplete!
|
ECHO Backup may be incomplete!
|
||||||
ECHO.
|
ECHO.
|
||||||
@@ -181,7 +181,7 @@ GOTO END
|
|||||||
|
|
||||||
:NO_FILES
|
:NO_FILES
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO [WARNING] No files found to copy
|
ECHO WARNING: No files found to copy
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO This may indicate:
|
ECHO This may indicate:
|
||||||
ECHO - All files are already up to date (/D option)
|
ECHO - All files are already up to date (/D option)
|
||||||
|
|||||||
@@ -1,199 +1,199 @@
|
|||||||
@ECHO OFF
|
@ECHO OFF
|
||||||
REM UPDATE.BAT - Backup Dataforth test machine to network storage
|
REM UPDATE.BAT - Backup Dataforth test machine to network storage
|
||||||
REM Usage: UPDATE [machine-name]
|
REM Usage: UPDATE [machine-name]
|
||||||
REM Example: UPDATE TS-4R
|
REM Example: UPDATE TS-4R
|
||||||
REM
|
REM
|
||||||
REM If machine-name not provided, uses MACHINE environment variable
|
REM If machine-name not provided, uses MACHINE environment variable
|
||||||
REM from AUTOEXEC.BAT
|
REM from AUTOEXEC.BAT
|
||||||
REM
|
REM
|
||||||
REM Version: 2.4 - DOS 6.22 compatible (removed brackets, fixed NUL checks)
|
REM Version: 2.4 - DOS 6.22 compatible (removed brackets, fixed NUL checks)
|
||||||
REM Last modified: 2026-01-21
|
REM Last modified: 2026-01-21
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 1: Determine machine name
|
REM STEP 1: Determine machine name
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
IF NOT "%1"=="" GOTO USE_PARAM
|
IF NOT "%1"=="" GOTO USE_PARAM
|
||||||
IF NOT "%MACHINE%"=="" GOTO USE_ENV
|
IF NOT "%MACHINE%"=="" GOTO USE_ENV
|
||||||
|
|
||||||
:NO_MACHINE
|
:NO_MACHINE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ERROR: Machine name not specified
|
ECHO ERROR: Machine name not specified
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Usage: UPDATE machine-name
|
ECHO Usage: UPDATE machine-name
|
||||||
ECHO Example: UPDATE TS-4R
|
ECHO Example: UPDATE TS-4R
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Or set MACHINE variable in AUTOEXEC.BAT:
|
ECHO Or set MACHINE variable in AUTOEXEC.BAT:
|
||||||
ECHO SET MACHINE=TS-4R
|
ECHO SET MACHINE=TS-4R
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:USE_PARAM
|
:USE_PARAM
|
||||||
SET MACHINE=%1
|
SET MACHINE=%1
|
||||||
GOTO CHECK_DRIVE
|
GOTO CHECK_DRIVE
|
||||||
|
|
||||||
:USE_ENV
|
:USE_ENV
|
||||||
REM Machine name from environment variable
|
REM Machine name from environment variable
|
||||||
GOTO CHECK_DRIVE
|
GOTO CHECK_DRIVE
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 2: Verify T: drive is accessible
|
REM STEP 2: Verify T: drive is accessible
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:CHECK_DRIVE
|
:CHECK_DRIVE
|
||||||
ECHO Checking network drive T:...
|
ECHO Checking network drive T:...
|
||||||
|
|
||||||
REM DOS 6.22: Direct file test is most reliable
|
REM DOS 6.22: Direct file test is most reliable
|
||||||
IF NOT EXIST T:\*.* GOTO NO_T_DRIVE
|
IF NOT EXIST T:\*.* GOTO NO_T_DRIVE
|
||||||
|
|
||||||
ECHO OK: T: drive accessible
|
ECHO OK: T: drive accessible
|
||||||
GOTO START_BACKUP
|
GOTO START_BACKUP
|
||||||
|
|
||||||
:NO_T_DRIVE
|
:NO_T_DRIVE
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ERROR: T: drive not available
|
ECHO ERROR: T: drive not available
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Network drive T: must be mapped to \\D2TESTNAS\test
|
ECHO Network drive T: must be mapped to \\D2TESTNAS\test
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Run STARTNET.BAT to map network drives:
|
ECHO Run STARTNET.BAT to map network drives:
|
||||||
ECHO C:\STARTNET.BAT
|
ECHO C:\STARTNET.BAT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Or map manually:
|
ECHO Or map manually:
|
||||||
ECHO NET USE T: \\D2TESTNAS\test /YES
|
ECHO NET USE T: \\D2TESTNAS\test /YES
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 3: Create backup directory structure
|
REM STEP 3: Create backup directory structure
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:START_BACKUP
|
:START_BACKUP
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Backup: Machine %MACHINE%
|
ECHO Backup: Machine %MACHINE%
|
||||||
ECHO ==============================================================
|
ECHO ==============================================================
|
||||||
ECHO Source: C:\
|
ECHO Source: C:\
|
||||||
ECHO Target: T:\%MACHINE%\BACKUP
|
ECHO Target: T:\%MACHINE%\BACKUP
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM Create machine directory if it doesn't exist
|
REM Create machine directory if it doesn't exist
|
||||||
IF NOT EXIST T:\%MACHINE%\*.* MD T:\%MACHINE%
|
IF NOT EXIST T:\%MACHINE%\*.* MD T:\%MACHINE%
|
||||||
|
|
||||||
REM Create backup directory
|
REM Create backup directory
|
||||||
IF NOT EXIST T:\%MACHINE%\BACKUP\*.* MD T:\%MACHINE%\BACKUP
|
IF NOT EXIST T:\%MACHINE%\BACKUP\*.* MD T:\%MACHINE%\BACKUP
|
||||||
|
|
||||||
REM Check if backup directory was created successfully
|
REM Check if backup directory was created successfully
|
||||||
IF NOT EXIST T:\%MACHINE%\BACKUP\*.* GOTO BACKUP_DIR_ERROR
|
IF NOT EXIST T:\%MACHINE%\BACKUP\*.* GOTO BACKUP_DIR_ERROR
|
||||||
|
|
||||||
ECHO OK: Backup directory ready
|
ECHO OK: Backup directory ready
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM STEP 4: Perform backup
|
REM STEP 4: Perform backup
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
ECHO Starting backup...
|
ECHO Starting backup...
|
||||||
ECHO This may take several minutes depending on file count.
|
ECHO This may take several minutes depending on file count.
|
||||||
ECHO.
|
ECHO.
|
||||||
|
|
||||||
REM XCOPY options for DOS 6.22:
|
REM XCOPY options for DOS 6.22:
|
||||||
REM /S = Copy subdirectories (except empty ones)
|
REM /S = Copy subdirectories (except empty ones)
|
||||||
REM /E = Copy subdirectories (including empty ones)
|
REM /E = Copy subdirectories (including empty ones)
|
||||||
REM /Y = Suppress prompts (auto-overwrite)
|
REM /Y = Suppress prompts (auto-overwrite)
|
||||||
REM /H = Copy hidden and system files
|
REM /H = Copy hidden and system files
|
||||||
REM /K = Copy attributes
|
REM /K = Copy attributes
|
||||||
REM /C = Continue on errors
|
REM /C = Continue on errors
|
||||||
REM
|
REM
|
||||||
REM NOTE: /D flag removed - requires date parameter in DOS 6.22 (/D:mm-dd-yy)
|
REM NOTE: /D flag removed - requires date parameter in DOS 6.22 (/D:mm-dd-yy)
|
||||||
REM NOTE: /Q flag not available in DOS 6.22 (added in later Windows versions)
|
REM NOTE: /Q flag not available in DOS 6.22 (added in later Windows versions)
|
||||||
|
|
||||||
XCOPY C:\*.* T:\%MACHINE%\BACKUP /S /E /Y /H /K /C
|
XCOPY C:\*.* T:\%MACHINE%\BACKUP /S /E /Y /H /K /C
|
||||||
|
|
||||||
REM Check XCOPY error level
|
REM Check XCOPY error level
|
||||||
REM 0 = Files copied OK
|
REM 0 = Files copied OK
|
||||||
REM 1 = No files found to copy
|
REM 1 = No files found to copy
|
||||||
REM 2 = User terminated (Ctrl+C)
|
REM 2 = User terminated (Ctrl+C)
|
||||||
REM 4 = Initialization error (insufficient memory, invalid path, etc)
|
REM 4 = Initialization error (insufficient memory, invalid path, etc)
|
||||||
REM 5 = Disk write error
|
REM 5 = Disk write error
|
||||||
|
|
||||||
IF ERRORLEVEL 5 GOTO DISK_ERROR
|
IF ERRORLEVEL 5 GOTO DISK_ERROR
|
||||||
IF ERRORLEVEL 4 GOTO INIT_ERROR
|
IF ERRORLEVEL 4 GOTO INIT_ERROR
|
||||||
IF ERRORLEVEL 2 GOTO USER_ABORT
|
IF ERRORLEVEL 2 GOTO USER_ABORT
|
||||||
IF ERRORLEVEL 1 GOTO NO_FILES
|
IF ERRORLEVEL 1 GOTO NO_FILES
|
||||||
|
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO OK: Backup completed successfully
|
ECHO OK: Backup completed successfully
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Files backed up to: T:\%MACHINE%\BACKUP
|
ECHO Files backed up to: T:\%MACHINE%\BACKUP
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM ERROR HANDLERS
|
REM ERROR HANDLERS
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:BACKUP_DIR_ERROR
|
:BACKUP_DIR_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ERROR: Could not create backup directory
|
ECHO ERROR: Could not create backup directory
|
||||||
ECHO Target: T:\%MACHINE%\BACKUP
|
ECHO Target: T:\%MACHINE%\BACKUP
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Check:
|
ECHO Check:
|
||||||
ECHO - T: drive is writable
|
ECHO - T: drive is writable
|
||||||
ECHO - Sufficient disk space on T:
|
ECHO - Sufficient disk space on T:
|
||||||
ECHO - Network connection is stable
|
ECHO - Network connection is stable
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:DISK_ERROR
|
:DISK_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ERROR: Disk write error
|
ECHO ERROR: Disk write error
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Possible causes:
|
ECHO Possible causes:
|
||||||
ECHO - Target drive is full
|
ECHO - Target drive is full
|
||||||
ECHO - Network connection lost
|
ECHO - Network connection lost
|
||||||
ECHO - Permission denied
|
ECHO - Permission denied
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:INIT_ERROR
|
:INIT_ERROR
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO ERROR: Backup initialization failed
|
ECHO ERROR: Backup initialization failed
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Possible causes:
|
ECHO Possible causes:
|
||||||
ECHO - Insufficient memory
|
ECHO - Insufficient memory
|
||||||
ECHO - Invalid path
|
ECHO - Invalid path
|
||||||
ECHO - Target drive not accessible
|
ECHO - Target drive not accessible
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:USER_ABORT
|
:USER_ABORT
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO WARNING: Backup terminated by user (Ctrl+C)
|
ECHO WARNING: Backup terminated by user (Ctrl+C)
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Backup may be incomplete!
|
ECHO Backup may be incomplete!
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
:NO_FILES
|
:NO_FILES
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO WARNING: No files found to copy
|
ECHO WARNING: No files found to copy
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO This may indicate:
|
ECHO This may indicate:
|
||||||
ECHO - All files are already up to date (/D option)
|
ECHO - All files are already up to date (/D option)
|
||||||
ECHO - Source drive is empty
|
ECHO - Source drive is empty
|
||||||
ECHO.
|
ECHO.
|
||||||
PAUSE
|
PAUSE
|
||||||
GOTO END
|
GOTO END
|
||||||
|
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
REM CLEANUP AND EXIT
|
REM CLEANUP AND EXIT
|
||||||
REM ==================================================================
|
REM ==================================================================
|
||||||
|
|
||||||
:END
|
:END
|
||||||
REM Clean up environment variables (DOS has limited space)
|
REM Clean up environment variables (DOS has limited space)
|
||||||
SET OLDDRV=
|
SET OLDDRV=
|
||||||
|
|||||||
32
projects/dataforth-dos/batch-files/deploy-to-nas.sh
Normal file
32
projects/dataforth-dos/batch-files/deploy-to-nas.sh
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# deploy-to-nas.sh - Deploy batch files to NAS with validation
|
||||||
|
# Always validates and fixes before deploying
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
echo "======================================"
|
||||||
|
echo "DOS Batch File Deployment"
|
||||||
|
echo "======================================"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
# Step 1: Validate and fix
|
||||||
|
echo "Step 1: Validating and fixing batch files..."
|
||||||
|
./validate-dos.sh --fix
|
||||||
|
|
||||||
|
# Step 2: Re-validate (should have no trailing space issues)
|
||||||
|
echo ""
|
||||||
|
echo "Step 2: Re-validating..."
|
||||||
|
./validate-dos.sh 2>&1 | grep -v "WARNING" | tail -5
|
||||||
|
|
||||||
|
# Step 3: Deploy to NAS
|
||||||
|
echo ""
|
||||||
|
echo "Step 3: Deploying to NAS..."
|
||||||
|
scp *.BAT root@192.168.0.9:/data/test/COMMON/ProdSW/
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "======================================"
|
||||||
|
echo "Deployment complete!"
|
||||||
|
echo "======================================"
|
||||||
|
echo ""
|
||||||
|
echo "Files deployed to T:\\COMMON\\ProdSW"
|
||||||
|
echo "Run NWTOC on DOS machine to download updates"
|
||||||
106
projects/dataforth-dos/batch-files/validate-dos.sh
Executable file
106
projects/dataforth-dos/batch-files/validate-dos.sh
Executable file
@@ -0,0 +1,106 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# validate-dos.sh - Validate batch files for DOS 6.22 compatibility
|
||||||
|
# Run before deploying to DOS machines
|
||||||
|
|
||||||
|
ERRORS=0
|
||||||
|
|
||||||
|
echo "DOS 6.22 Batch File Validator"
|
||||||
|
echo "=============================="
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
for file in *.BAT; do
|
||||||
|
[ -f "$file" ] || continue
|
||||||
|
echo "Checking: $file"
|
||||||
|
|
||||||
|
# Rule 1: No CALL :label
|
||||||
|
if grep -qE "CALL\s+:" "$file" 2>/dev/null; then
|
||||||
|
echo " ERROR: CALL :label subroutine found (Rule 1)"
|
||||||
|
ERRORS=$((ERRORS+1))
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Rule 2: No %DATE% or %TIME%
|
||||||
|
if grep -qE "%DATE%|%TIME%" "$file" 2>/dev/null; then
|
||||||
|
echo " ERROR: %DATE% or %TIME% found (Rule 2)"
|
||||||
|
ERRORS=$((ERRORS+1))
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Rule 3: No square brackets in ECHO
|
||||||
|
if grep -qE "ECHO.*\[" "$file" 2>/dev/null; then
|
||||||
|
# Exclude REM lines
|
||||||
|
if grep -vE "^REM" "$file" | grep -qE "ECHO.*\[" 2>/dev/null; then
|
||||||
|
echo " ERROR: Square brackets in ECHO (Rule 3)"
|
||||||
|
ERRORS=$((ERRORS+1))
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Rule 6: No 2>NUL
|
||||||
|
if grep -qE "2>NUL|2> *NUL" "$file" 2>/dev/null; then
|
||||||
|
echo " ERROR: 2>NUL stderr redirect found (Rule 6)"
|
||||||
|
ERRORS=$((ERRORS+1))
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Rule 8: No :EOF
|
||||||
|
if grep -qE "GOTO\s+:?EOF" "$file" 2>/dev/null; then
|
||||||
|
echo " ERROR: :EOF label reference found (Rule 8)"
|
||||||
|
ERRORS=$((ERRORS+1))
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Rule 15: No SETLOCAL/ENDLOCAL
|
||||||
|
if grep -qiE "SETLOCAL|ENDLOCAL" "$file" 2>/dev/null; then
|
||||||
|
echo " ERROR: SETLOCAL/ENDLOCAL found (Rule 15)"
|
||||||
|
ERRORS=$((ERRORS+1))
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Rule 19: Check for LF-only line endings (no CR)
|
||||||
|
if file "$file" | grep -qv "CRLF"; then
|
||||||
|
if file "$file" | grep -q "ASCII"; then
|
||||||
|
echo " WARNING: May have Unix line endings (Rule 19)"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Rule 20: Trailing spaces in SET statements
|
||||||
|
if grep -qE "^SET [A-Za-z_]+=[^ ]* +$" "$file" 2>/dev/null; then
|
||||||
|
echo " ERROR: Trailing space in SET statement (Rule 20)"
|
||||||
|
grep -nE "^SET [A-Za-z_]+=[^ ]* +$" "$file" | sed 's/^/ Line /'
|
||||||
|
ERRORS=$((ERRORS+1))
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Rule 20: Any trailing whitespace
|
||||||
|
if grep -qE " +$" "$file" 2>/dev/null; then
|
||||||
|
TRAILING=$(grep -cE " +$" "$file")
|
||||||
|
echo " WARNING: $TRAILING lines have trailing whitespace (Rule 20)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check filename is 8.3
|
||||||
|
BASENAME=$(basename "$file" .BAT)
|
||||||
|
if [ ${#BASENAME} -gt 8 ]; then
|
||||||
|
echo " ERROR: Filename exceeds 8 characters (Rule 14)"
|
||||||
|
ERRORS=$((ERRORS+1))
|
||||||
|
fi
|
||||||
|
|
||||||
|
done
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "=============================="
|
||||||
|
if [ $ERRORS -eq 0 ]; then
|
||||||
|
echo "All checks passed!"
|
||||||
|
else
|
||||||
|
echo "Found $ERRORS error(s)"
|
||||||
|
fi
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
# Auto-fix option
|
||||||
|
if [ "$1" = "--fix" ]; then
|
||||||
|
echo "Applying fixes..."
|
||||||
|
for file in *.BAT; do
|
||||||
|
[ -f "$file" ] || continue
|
||||||
|
# Strip trailing whitespace
|
||||||
|
sed -i '' 's/[[:space:]]*$//' "$file"
|
||||||
|
# Convert to DOS line endings
|
||||||
|
perl -pi -e 's/\r?\n/\r\n/g' "$file"
|
||||||
|
echo " Fixed: $file"
|
||||||
|
done
|
||||||
|
echo "Done. Re-run without --fix to verify."
|
||||||
|
fi
|
||||||
|
|
||||||
|
exit $ERRORS
|
||||||
Reference in New Issue
Block a user