Пакетный сценарий: существование файла в зависимости от местоположения приглашения пользователя - PullRequest
0 голосов
/ 15 февраля 2019

Шаг только один раз. Первый раз, когда пользователь запускает пакетный файл - «Test.bat», он должен запросить у пользователя путь к каталогу и переместить путь к текстовому файлу - Path.txt и перейти к следующему шагу: Следующая команда

Шаг для каждого раза Когда пользователь запускает один и тот же пакетный файл - «Test.bat» из второго раза, он должен проверить наличие вышеуказанного файла «Path.txt» в указанном выше каталоге, указанном пользователем, и еслизатем перейдите к следующему шагу: Nextcommand еще нужно создать файл, как указано в предыдущем шаге.

Мой код

echo off
@echo off
IF EXIST "%FileLoc%\FileLocationPath.txt" GOTO :NextCommand
set loc= Enter File Location:
set /p FileLoc=%loc%
@echo %FileLoc%>>FileLocationPath.txt
GOTO :NextCommand

Ответы [ 2 ]

0 голосов
/ 15 февраля 2019

Чтобы информация сохранилась, вам нужно записать ее в файл (есть и другие возможности, например, Registry, но файл - самое простое решение)

@echo off
setlocal 
IF EXIST "FileLocationPath.txt" (
  <"FileLocationPath.txt" set /p FileLoc=
  goto :NextCommand
) 
set /p "FileLoc=Enter File Location: "
>"FileLocationPath.txt" echo %FileLoc%
:NextCommand
echo using %FileLoc%

Если вам когда-либо понадобится сбросить настройки по умолчанию, просто удалите файл.

0 голосов
/ 15 февраля 2019

Это должно быть то, что вы хотите.

@echo off
setlocal enabledelayedexpansion
call :check
if defined FileLoc (
      echo %FileLoc%
      pause
    ) else (
      set /p "FileLoc=Enter File Location: "
      echo/>>"%0"
      echo set "FileLoc=!FileLoc!">>"%0"
)    
goto :eof
:check

Он проверит наличие переменной, которая сначала не будет существовать, Пользователь введет ее, затем, как только пользователь введет местоположение, он сохранитэто местоположение как переменная ниже метки :check.Каждый раз после запуска скрипта вызывается метка проверки и устанавливается уже установленное местоположение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...