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

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

Ветеран


Contributor


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

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


Как вариант (если CMD принципиален и Powershell никак не применять), можно сделать CMD со встроенным JS
Код: Выделить весь код
@set @E=1; /*

@Echo Off
cls
	Set "FileIn=Z:\Box_In\1 Высокий блондин в черном ботинке (1972).mp4"
	Set /A dtFile=24*60*60
	Set /A dsFile=500*1024*1024
        
	For /f "usebackq tokens=1,2 delims= " %%a In (`Cscript //NoLogo /E:jscript "%~dpnx0" "%FileIn:\=\\%" %dsFile% %dtFile%`) Do (
		Set /A lSize=%%a
		Set /A lTime=%%b
	)

	Echo "%lSize%"  "%lTime%"
pause
GoTo :Eof
*/

var oArg = WScript.Arguments;
var FSO = WScript.CreateObject("Scripting.FileSystemObject");
var now = new Date();

var gFile = FSO.GetFile(oArg(0));

//		WScript.Echo(gFile.Size + " < " + oArg(1));
var lSize;
if (gFile.Size < oArg(1)) lSize = 0; else lSize = 1;

//		WScript.Echo(now.getTime()/1000 - gFile.DateLastModified/1000 + " < " + oArg(2));
var lTime;
if (now.getTime()/1000 - gFile.DateLastModified/1000 < oArg(2)) lTime = 0; else lTime = 1;

WScript.Echo(lSize, lTime);
Время задавать в секундах, размер в байтах, батник сохранить в 866 кодировке.

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


Последний раз редактировалось megaloman, 22-04-2021 в 23:18.


Отправлено: 23:12, 22-04-2021 | #8