AyrA icon

YTU.BAT

AyrA | PRO | 06/19/17 04:59:52 PM UTC | 0 ⭐ | 689 👁️ | Never ⏰ | []
Batch |

2.57 KB

|

None

|

0 👍

/

0 👎

@ECHO OFF
SETLOCAL
 
SET P=C:\BAT\YT
SET NEW=%P%\youtube-dl-new.exe
SET OLD=%P%\youtube-dl.exe
SET URL=http://youtube-dl.org/downloads/latest/youtube-dl.exe
SET CHECK=https://rg3.github.io/youtube-dl/update/LATEST_VERSION
SET CHKNEW=%P%\NEW.TXT
SET CHKOLD=%P%\OLD.TXT
SET HELP=%P%\HELP.TXT
SET DAYFILE=%P%\ytu-daily.txt
SET TEMPDAYFILE=%TEMP%\COMPARE.TXT
 
REM ======================
REM == No changes below ==
REM ======================
 
REM If the file does not exists, download regardless of errors.
IF NOT EXIST "%OLD%" GOTO FIRSTRUN
GOTO DAYCHECK
 
REM Delete any remaining files and download new copy
:FURSTRUN
IF EXIST "%CHKOLD%" DEL "%CHKOLD%"
IF EXIST "%OLD%" DEL "%OLD%"
IF EXIST "%NEW%" DEL "%NEW%"
IF EXIST "%HELP%" DEL "%HELP%"
GOTO DOWNLOAD
 
REM Check if we did this already today
:DAYCHECK
IF /I "%~1"=="/F" GOTO DOWNLOAD
IF NOT EXIST %DAYFILE% ECHO NODATE>%DAYFILE%
ECHO %DATE%>"%TEMPDAYFILE%"
ECHO N | COMP %DAYFILE% "%TEMPDAYFILE%" 2> NUL 1> NUL
IF %ERRORLEVEL%==0 GOTO NODAY
DEL "%TEMPDAYFILE%"
GOTO DOWNLOAD
 
REM Download already done for today
:NODAY
DEL "%TEMPDAYFILE%"
IF /I "%~1"=="/S" GOTO END
ECHO Update check was already done today. Use /F to override
GOTO END
 
REM Load new version definition
:DOWNLOAD
get /noproxy %CHECK% %CHKNEW%
 
REM Skip version check if forced update
IF /I "%~1"=="/F" GOTO UPDATE
 
REM Make sure new file was loaded
IF NOT EXIST %CHKNEW% GOTO ERRLOAD
REM If old version does not exists, just download new version
IF NOT EXIST %CHKOLD% GOTO UPDATE
GOTO TEST
 
REM Make sure new version is different
:TEST
ECHO N | COMP %CHKNEW% %CHKOLD% 2> NUL 1> NUL
IF %ERRORLEVEL%==0 GOTO NOUPDATE
GOTO UPDATE
 
REM Not updated, because no is available
:NOUPDATE
ECHO %DATE%>%DAYFILE%
ECHO No new Version available. Current version:
TYPE %CHKNEW%
GOTO END
 
REM New version available, download it.
:UPDATE
ECHO Downloading new Version...
get /noproxy %URL% %NEW%
IF NOT EXIST %NEW% GOTO ERRLOAD
GOTO REPLACE
 
REM Replaces the current version with the new one
:REPLACE
IF EXIST %OLD% DEL %OLD%
IF EXIST %OLD% GOTO ERRDEL
MOVE %NEW% %OLD%>NUL
IF EXIST %CHKOLD% DEL %CHKOLD%
IF EXIST %CHKOLD% GOTO ERRDEL
MOVE %CHKNEW% %CHKOLD%>NUL
%OLD% --help > %HELP%
ECHO %DATE%>%DAYFILE%
ECHO Update success
GOTO END
 
REM Can't downlaod version definition or application
:ERRLOAD
ECHO Can't download new version.
GOTO END
 
REM Can't delete old version definition or application
:ERRDEL
ECHO Can't delete old version.
IF EXIST %NEW% DEL %NEW%
IF EXIST %CHKNEW% DEL %CHKNEW%
GOTO END
 
REM All done
:END
ENDLOCAL

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎