Это можно легко сделать с помощью пакетного файла , используя оператор перенаправления >>
, учитывая, что каждый файл заканчивается переводом строки:
for %%F in ("%TargetFolder%\*.js") do (
>> "%%~F" echo/This is the new line of text.
)
Или, если вы хотите перейти также в подкаталоги:
for /R "%TargetFolder%" %%F in ("*.js") do (
>> "%%~F" echo/This is the new line of text.
)
Конечно, вы можете сначала явно добавить разрыв строки:
for %%F in ("%TargetFolder%\*.js") do (
>> "%%~F" (
echo/
echo/This is the new line of text.
)
)
Или, конечно, для рекурсивного подхода.
Если вы хотите добавить разрыв строки только в том случае, если файл еще не заканчивается таким, вы можете сделать следующее:
for %%F in ("%TargetFolder%\*.js") do (
rem /* Count the number of lines that contain zero or more characters at the end;
rem this is true for every line except for the last when it is not terminated
rem by a line-break, because the `$` is anchored to such: */
for /F %%D in ('findstr ".*$" "%%~F" ^| find /C /V ""') do (
rem // Count the total number of lines in the file:
for /F %%C in ('^< "%%~F" find /C /V ""') do (
>> "%%~F" (
rem // Compare the line counts and conditionally append a line-break:
if %%D lss %%C echo/
echo/This is the new line of text.
)
)
)
)
И опять то же самое для рекурсивного подхода.