Can anyone know exactly what is occurring this error? Or some way to update the version automatically?
- 1. Redirect all command output lines
CALL npm version
for archival version
:
CALL npm version > version
:: salva todas as linhas da saída de comando no arquivo version
- 2. Defines the variable
set ver={
(only the first line of the redirected command)
SET /p ver=<version
:: set /p vai assumir/definir sempre a primeira linha
:: do arquivo redirecionado, no seu caso version ==> "{"
- 3. Defines the variable
ver
with a substring(a) /substitution that is non-existent
SET /p ver=<version
↳ é o mesmo que: SET /p ver={
SET ver=%ver:{ 'aplicat-resta': '='%
SET ver=%ver:{ 'aplicat-resta': '='%
:: o valor atribuido na variável ver não comporta/não executa
:: a substituição, então a variável mantém seu valor atual ver={
- 4. Removes the variable
ver
with the command SET ver=
SET ver=%ver:~1,-2%
↳ ↳ é o mesmo que: SET ver=
SET ver=%ver:~1,-2%
:: não existe um index 1 na sua variável definida como {,
:: também não há como suprimir os ultimos 2 dígitos da várivel de forma que
:: possa obedecer a substring: variável=(variável: valor do (index 1), até o (index total -2))
:: assim, vai resultar num valor nulo, tornando a execução na remoção da sua variável: SET ver=
- 5. An issue that explains what you want to pass as see would point to a more accurate solution
CALL cordova-set-version -v %ver%
CALL cordova-set-version -v %ver%
↳ é o mesmo que: Call cordova-set-version -v
:: como a variável foi removida, esse comando é executado com um argumento
:: a menos, onde não há a variável nem valores em/para ver definidos em %ver%
- 6. Commando
echo
will inform your status defined by on
or off
when executed and/or redirecting on output to the pointed file:
ECHO %ver% > ..\..\AplicatResta\Resta\version_app.txt
ECHO %ver% > ..\..\AplicatResta\Resta\version_app.txt
↳ ↳ é o mesmo que: ECHO > ..\..\AplicatResta\Resta\version_app.txt
:: como a variável %ver% foi removida nas execuções anteriores, o interpretador
:: de comandos (cmd.exe) não tem como passar argumento %ver% para o comando ECHO
:: resultando como saída do ECHO [%string nenhuma%] + [redirecionamento de sáida] [arquivo.txt],
:: apenas o status atual do comando ECHO, e como foi definido na primeira linha do seu arquivo bat
:: (@echo off), é exatamente isto que tens recebes no arquivo apontado para redirecionamendo do echo
- For the purpose of proving behaviour
echo
:: define echo off
@echo off && cd /d "%~dp0"
:: apaga existindo ou não o arquivo .\status.txt
2>nul del .\status.txt
:: remove definida ou não a variável ver
set "ver="
:: teste de 'echo variável que não existe' fazendo retornar status definido `off`
ECHO %ver% >status.txt
:: lista conteúdo atual do arquivo .\status.txt
@type status.txt
:: define echo on
@echo on
:: teste de 'echo variável que não existe' fazendo retornar status definido `on`
@ECHO %ver% >status.txt
:: lista conteúdo atual do arquivo .\status.txt
@type status.txt
ECHO is off.
ECHO is on.
To learn more about the command Echo
consult: