Использование языка сценариев приведет к большим накладным расходам.Исполняемый файл сценариев, будь то PowerShell, Python, Perl или что-либо еще, должен загружаться при каждом вызове.Вот пример использования PowerShell.
SET "VAR=a"
powershell -NoLogo -NoProfile -Command ^
"'%%s' | Out-File -FilePath 'output.txt' -Append -NoNewline"
SET "VAR=b"
powershell -NoLogo -NoProfile -Command ^
"'%%s' | Out-File -FilePath 'output.txt' -Append -NoNewline"
Не ясно, как из вашего вопроса создается переменная VAR.Я бы предположил, что это какая-то форма цикла или подпрограмма CALL.
SET "VAR=a b c d e f g h i j k l"
FOR %%s IN (%VAR%) DO (
powershell -NoLogo -NoProfile -Command ^
"'%%s' | Out-File -FilePath 'output.txt' -Append -NoNewline"
)
Чтобы устранить накладные расходы, необходимые для многократной загрузки языка сценариев, вы можете рассмотреть возможность создания временного файла, содержащего несколько строк.Затем один раз вызовите язык сценариев, чтобы получить окончательный выходной файл без перевода строки.
IF EXIST "appendtemp.txt" (DEL "appendtemp.txt")
SET "VAR=a b c d e f g h i j k l"
FOR %%c IN (%VAR%) DO (ECHO>>appendtemp.txt %%c)
powershell -NoLogo -NoProfile -Command ^
"Get-Content -Raw -Path 'appendtemp.txt' |" ^
"ForEach-Object { $_ -replace \"`r`n\",'' } |" ^
"Out-File -FilePath 'output.txt'"