ПО ЛОПУ не будет работать - PullRequest
0 голосов
/ 06 июня 2018

У меня были самые тяжелые времена с этим циклом FOR.Я думал, что это работает на днях, но когда я начал использовать его сегодня, это не так.Это часть гораздо большего сценария, но это единственная часть, которая меня вешает.Также, к сведению, я не писал большую часть сценария.Это было дано мне, и я должен был изменить это, чтобы соответствовать моим потребностям.Может кто-нибудь взглянуть и дать мне то, чего мне не хватает.

IF NOT EXIST C:\Paytronix\config\deploytool\terminals.xml (
    copy terminals.xml_template terminals.xml > temp.txt
    set MAKETERMXML=1
) ELSE (
    set MAKETERMXML=0
)

echo Create terminals.xml = %MAKETERMXML%
PING localhost -n 5 >NUL

    for /l %%T in (1,1,%TERMINALS%) do (

        echo Trying terminal %TERMSTRING%%%T
        PING localhost -n 5 >NUL

        REM net use /user:USERNAME /PERSISTENT:NO P: \\%TERMSTRING%%%T\C$ PASSWORD
        net use P: \\%TERMSTRING%%%T\C$ /USER:%USR% %PWRD% /PERSISTENT:NO > temp.txt
        REM /USER:username password (Insert after C$ 
        REM net use P: \\%TERMSTRING%%%T\C$ /PERSISTENT:NO > temp.txt

        setlocal EnableDelayedExpansion

        echo Copying Installer Shortcut to Startup Folder
        IF EXIST "\\%TERMSTRING%%%T\C$\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup" (
            copy aaaPxAlohaUiInstaller.lnk "\\%TERMSTRING%%%T\C$\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup" > result.txt
        ) ELSE (
            copy aaaPxAlohaUiInstaller.lnk "\\%TERMSTRING%%%T\C$\Documents and Settings\All Users\Start Menu\Programs\Startup" > result.txt
        )
        PING localhost -n 5 >NUL

        find /c "1" result.txt > copyresult.txt
        FOR /F "tokens=1,2,3" %%a in (copyresult.txt) do set COPYTAG=%%c

        echo Copy Result = !COPYTAG!
        PING localhost -n 5 >NUL

        IF !COPYTAG!==1 (
            echo SUCCESS !!! Valid Terminal %TERMSTRING%%%T > C:\Paytronix\Paytronix.bd
            echo SUCCESS !!! Valid Terminal %TERMSTRING%%%T


            echo Updating PxInst folder
            IF NOT EXIST "\\%TERMSTRING%%%T\C$\PxInst\" mkdir \\%TERMSTRING%%%T\C$\PxInst > temp.txt
            REM Delete PxInst contents
            del /F /S /Q "\\%TERMSTRING%%%T\C$\PxInst\*" > temp.txt
            REM  Create PxAlohaUiInstaller folder
            IF NOT EXIST "\\%TERMSTRING%%%T\C$\PxInst\PxAlohaUiInstaller" mkdir \\%TERMSTRING%%%T\C$\PxInst\PxAlohaUiInstaller > temp.txt
            REM Update user program installer
            copy /Y C:\Paytronix\PxAlohaUiInstaller\PxAlohaUiInstaller.exe \\%TERMSTRING%%%T\C$\PxInst\PxAlohaUiInstaller > temp.txt
            REM Copy PxAlohaUiInstaller done
            PING localhost -n 5 >NUL

            REM Create user program dir if missing
            IF NOT EXIST "\\%TERMSTRING%%%T\C$\Paytronix" (
                echo Creating User Program folder
                mkdir \\%TERMSTRING%%%T\C$\Paytronix\config\userprog > temp.txt
                copy C:\Paytronix\config\userprog\pxalohaui.cfg \\%TERMSTRING%%%T\C$\Paytronix\config\userprog\ > temp.txt
            )

            ::echo 

            IF %MAKETERMXML%==1 (
                echo        ^<Terminal^> >> terminals.xml
                echo           ^<Name^>term%%T^</Name^> >> terminals.xml
                echo            ^<Path^>\\%TERMSTRING%%%T\C$^</Path^> >> terminals.xml
                echo            ^<Address^>%TERMSTRING%%%T^</Address^> >> terminals.xml
                echo        ^</Terminal^> >> terminals.xml
            )
        )
        endlocal
        net use P: /DELETE /YES > temp.txt
        del result.txt
        del copyresult.txt
        del temp.txt

    )
    echo %MAKETERMXML%
    IF %MAKETERMXML%==1 (
            echo    ^</TerminalList^> >> terminals.xml
            echo ^</PaytronixConfig^> >> terminals.xml
            copy terminals.xml C:\Paytronix\config\deploytool\terminals.xml
    )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...