Имя пользователя:
Пароль:
 

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

Ветеран


Contributor


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

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


Sta1917, один батник для всего
Код: Выделить весь код
@Echo Off
cls & If "%~1"=="" Exit /B
	FOR /F "tokens=2 delims==." %%d in ('WMIC OS GET LOCALDATETime /VALUE') DO Set "CurDate=%%d"
	Set "CurDate=%CurDate:~0,8%"

	Set "In=%~1"
	If "%In:~-1%"=="\" Set "In=%In:~0,-1%"

	If "%~2"=="" Call :MyReName "%In%" &Exit /B

	Call :MyReName "%In%" "Out"
	If Not Exist "%In%\*.*" (
		Copy "%In%" "%~dp2%Out%"
	) Else (
		Xcopy "%In%\*.*" "%~dp2%Out%" /H /Y /C /R /D /E /V /I /Q
	)
Exit /B

:MyReName
	Set "In1=%~nx1"
	Echo %~nx1| >nul 2>nul FindStr /X /R /C:"^20[0-4][0-9][0-1][0-9][0-3][0-9].*$"
	If %ErrorLevel%==0 (Set "In1=%CurDate%%In1:~8%") Else (Set "In1=%CurDate% %In1%")
	If "%~2"=="" (Ren "%In%" "%In1%") Else (Set "%~2=%In1%")
Exit /B

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


Последний раз редактировалось megaloman, 07-04-2022 в 17:17.

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

Отправлено: 08:34, 22-11-2021 | #3