Executar um arquivo de texto como um script em lote
Sim, isso é possível fazendo com que o arquivo de texto que contém os comandos que você precisa executar seja mencionado como o primeiro argumento em lote que é passado para o script em lote.
Você pode definir o valor do argumento como uma variável e usar o tipo para criar um arquivo em lote temporário com o conteúdo de o arquivo de texto e, em seguida, execute esse arquivo por meio de cmd para processar adequadamente.
Lógica de script em lote
@ECHO ON
SET cmdtxt=%~1
SET cName=%~N1
if exist "%tmp%\%cName%.cmd" del /q /f "%tmp%\%cName%.cmd"
if not exist "%tmp%\%cName%.cmd" type "%cmdtxt%" >> "%tmp%\%cName%.cmd"
cmd /k "%tmp%\%cName%.cmd"
pause
exit
Note: You can use cmd /c to have the command window(s) close after execution.
Arquivo de texto
ECHO Line 1
dir *.txt
Note: This is the text file without a
.bat
or.cmd
which each line will contain a valid batch command which will be executed.
Execute isso usando um dos dois. . .
1.Drag and Drop
2. Linha de Comando
C:\Users\User\Desktop\RunMe\RunTextCommands.cmd "C:\Users\User\Desktop\RunMe\cmd.txt"
@ECHO OFF
resultados
Maisrecursos
Argumentos da linha de comando (parâmetros) %* in a batch script refers to all the arguments (e.g. %1 %2 %3 %4 %5 ...%255) only arguments %1 to %9 can be referenced by number.
- Digite
-
FOR /?
In addition, substitution of FOR variable references has been enhanced. You can now use the following optional syntax:
%~nI - expands %I to a file name only