Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Contributor


Сообщения: 2708
Благодарности: 1684

Профиль | Отправить PM | Цитировать


NuclearBox, Вариант 2. Если всё-таки с Copy
Код: Выделить весь код
@Echo Off
cls
	Set "BoxIn=Z:\Box_In"
	Set "Ext=txt"

	Call :Consol "%BoxIn%" "%Ext%"
	FOR /F "usebackq delims=" %%i IN (`2^>nul Dir "%BoxIn%" /B /S /A:D`) DO Call :Consol "%%i" "%Ext%"
Pause
GoTo :Eof

:Consol
	2>Nul Del "%~1\%~nx1.%~2" 
	If Not Exist "%~1\*.%~2" Exit /B 1
	>"%~1\%~nx1.%~2.alltmp" (cd.)	
	>"%~1\%~nx1.%~2.~tmp" (cd.)	
	FOR /F "usebackq delims=" %%i IN (`2^>nul Dir "%~1\*.%~2" /B /A:-D`) DO (
		1>Nul 2>&1 Move /Y "%~1\%~nx1.%~2.alltmp" "%~1\%~nx1.%~2.~tmp"
		>nul Copy "%~1\%~nx1.%~2.~tmp" /B +"%~1\%%i" /B "%~1\%~nx1.%~2.alltmp" /B 
	)
	>nul Move "%~1\%~nx1.%~2.alltmp" "%~1\%~nx1.%~2" 
	2>Nul Del "%~1\%~nx1.%~2.~tmp"
		
Exit /B
Возможны неприятности: если последняя строка исходного текстового файла не заканчивается символами 0D 0A, то последняя строка предыдущего файла и первая строка последующего сольются в одной строке в консолидированном файле.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 17:04, 17-01-2019 | #4