Guest User

file randomaiz0r

a guest
Sep 4th, 2020
233
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Batch 4.67 KB | None | 0 0
  1. @ECHO OFF&SETLOCAL EnableDelayedExpansion EnableExtensions
  2. TITLE File randomaiz0r
  3. COLOR 1F
  4. MODE 100,35
  5. SET "SELF=%~dp0"
  6. SET "SELFEXT=%~dpnx0"
  7. SET "SELFDropFolder=%~dp0randomaiz0r\"
  8. CALL :SplishSplashSplosh
  9. CALL :GetFolder
  10. PAUSE
  11. CALL :CheckFolderContents
  12. CALL :RNDFilename
  13. ECHO.Do you want to remove all Exif Data from images?
  14. ECHO.If not: close this window. Else press any key.
  15. PAUSE >NUL
  16. CALL :RMVExifPhoto
  17. ECHO.Do you want to remove all Exif Data from video?
  18. ECHO.If not: close this window. Else press any key.
  19. PAUSE >NUL
  20. CALL :RMVExifVideo
  21. ECHO.Process has finished.
  22. PAUSE >NUL
  23. EXIT
  24.  
  25. :SplishSplashSplosh
  26. IF NOT DEFINED SPC SET "SPC=                      "
  27. ECHO.
  28. ECHO.!SPC! FILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILE
  29. ECHO.!SPC!  d8888b.  .d8b.  d8b   db d8888b.  .d88b.
  30. ECHO.!SPC!  88  `8D d8' `8b 888o  88 88  `8D .8P  Y8.
  31. ECHO.!SPC!  88oobY' 88ooo88 88V8o 88 88   88 88    88  .88888.
  32. ECHO.!SPC!  88`8b   88~~~88 88 V8o88 88   88 88    88  `88888'
  33. ECHO.!SPC!  88 `88. 88   88 88  V888 88  .8D `8b  d8'
  34. ECHO.!SPC!  88   YD YP   YP VP   V8P Y8888D'  `Y88P'
  35. ECHO.!SPC! FILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILE
  36. ECHO.!SPC! .88b  d88.  .d8b.  d888888b d88888D  .d88b.  d8888b.
  37. ECHO.!SPC! 88'YbdP`88 d8' `8b   `88'   YP  d8' .8P  88. 88  `8D
  38. ECHO.!SPC! 88  88  88 88ooo88    88       d8'  88  d'88 88oobY'
  39. ECHO.!SPC! 88  88  88 88~~~88    88      d8'   88 d' 88 88`8b
  40. ECHO.!SPC! 88  88  88 88   88   .88.    d8' db `88  d8' 88 `88.
  41. ECHO.!SPC! YP  YP  YP YP   YP Y888888P d88888P  `Y88P'  88   YD
  42. ECHO.!SPC! FILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILE
  43. ECHO.
  44. EXIT /B
  45.  
  46. :GetFolder
  47. IF NOT EXIST "!SELFDropFolder!" (
  48.     MKDIR "!SELFDropFolder!"
  49.     ECHO.### Folder !SELFDropFolder! successfully created. You can now drop your files to randomaiz in.
  50. ) ELSE (
  51.     ECHO.### !SELFDropFolder! already exists. You can now drop your files to randomaiz in.
  52. )
  53. EXIT /B
  54.  
  55. :CheckFolderContents
  56. >NUL 2>NUL DIR /a-d /s "!SELFDropFolder!*" && (ECHO.Files found. Continuing.) || (ECHO.Error. No files found. Please try again.&PAUSE >NUL&EXIT)
  57. EXIT /B
  58.  
  59. :RNDFilename
  60. FOR /R %SELFDropFolder% %%C IN (*) DO (
  61.     SET "TMP=%%C"
  62.     SET "TMP2=%%~dpC"
  63.     SET "TMPX=%%~xC"
  64.     CALL :ExtensionToUpper
  65.     CALL :DetectMedia
  66.     CALL :GenerateRandom
  67.     SET /A TOTAL+=1
  68.     ECHO.[!TOTAL!.!MediaType!] Masking: %%C --^> !TMPB!!TMPX!
  69.     REN "%%C" "!TMPB!!TMPX!" >NUL
  70.     REM ECHO.Random string is !TMPB!
  71.     TITLE [RNDFilename] Processing Files in !SELFDropFolder! - !TOTAL!
  72. )
  73. ECHO.
  74. ECHO.### Finished Masking Filenames
  75. EXIT /B
  76.  
  77. :RMVExifPhoto
  78. FOR /R %SELFDropFolder% %%C IN (*) DO (
  79.     SET "TMP=%%C"
  80.     SET "TMP2=%%~dpC"
  81.     SET "TMPX=%%~xC"
  82.     CALL :DetectMedia
  83.     IF "!MediaType!"=="Image" (
  84.         SET /A TOTAL2+=1
  85.         exiftool -overwrite_original -all= %%C
  86.         ECHO.[!TOTAL2!.] Stripped ^>^>^>%%C^<^<^< of all EXIF-Data.
  87.     )
  88.     REM ECHO.Random string is !TMPB!
  89.     TITLE [RMVExifPhoto] Processing Files in !SELFDropFolder! - !TOTAL2!/!TOTAL!
  90. )
  91. EXIT /B
  92.  
  93. :RMVExifVideo
  94. FOR /R %SELFDropFolder% %%C IN (*) DO (
  95.     SET "TMP=%%C"
  96.     SET "TMP2=%%~dpC"
  97.     SET "TMPX=%%~xC"
  98.     SET "TMPY=%%~nxC"
  99.     CALL :DetectMedia
  100.     IF "!MediaType!"=="Video" (
  101.         SET /A TOTAL3+=1
  102.         ffmpeg -y -i "%%C" -c copy -map_metadata -1 -metadata title="My Title" -metadata creation_time=2014-01-01T21:30:00 -map_chapters -1 "!TMP2!2!TMPY!"
  103.         DEL /F /Q "!TMP2!!TMPY!"
  104.         REN "!TMP2!2!TMPY!" "!TMPY!"
  105.         ECHO.[!TOTAL3!.] Overwrote EXIF on ^>^>^>%%C^<^<^<.
  106.     )
  107.     REM ECHO.Random string is !TMPB!
  108.     TITLE [RMVExifVideo] Processing Files in !SELFDropFolder! - !TOTAL3!/!TOTAL!
  109. )
  110. EXIT /B
  111.  
  112. :GenerateRandom
  113. SET "ALPHANUMERICALS=ABCDEFGHIJKLMNOP0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
  114.  
  115. SET "TMPB="
  116. FOR /L %%B IN (0,1,12) DO (
  117.     SET /A RND=!RANDOM! * 62 / 32768 + 1
  118.     FOR /F %%C IN ('ECHO.%%ALPHANUMERICALS:~!RND!^,1%%') DO SET "TMPB=!TMPB!%%C"
  119. )
  120. IF EXIST "!TMP2!!TMPB!!TMPX!" CALL :GenerateRandom
  121. EXIT /B
  122.  
  123. :ExtensionToUpper
  124. :: Subroutine to convert a variable VALUE to all UPPER CASE.
  125. :: The argument for this subroutine is the variable NAME.
  126. FOR %%I IN ("a=A" "b=B" "c=C" "d=D" "e=E" "f=F" "g=G" "h=H" "i=I" "j=J" "k=K" "l=L" "m=M" "n=N" "o=O" "p=P" "q=Q" "r=R" "s=S" "t=T" "u=U" "v=V" "w=W" "x=X" "y=Y" "z=Z") DO (
  127.     SET "TMPX=!TMPX:%%~I!"
  128. )
  129. EXIT /B
  130.  
  131. :DetectMedia
  132. IF NOT DEFINED MediaTypePhoto SET "MediaTypePhoto=0"
  133. IF NOT DEFINED MediaTypeVideo SET "MediaTypeVideo=0"
  134. SET "MediaType="
  135. FOR %%I IN ("BMP" "RLE" "DIB" "GIF" "JPG" "JPEG" "JP2" "J2C" "JPF" "J2K" "JPC" "JPS" "PNG" "TIF" "TIFF") DO (
  136.     IF /I "!TMPX!"==".%%~I" (
  137.         SET "MediaType=Image"
  138.         SET /A MediaTypePhoto+=1
  139.         EXIT /B
  140.     )
  141. )
  142. FOR %%I IN ("MP4" "AVI" "MKV" "FLV") DO (
  143.     IF /I "!TMPX!"==".%%~I" (
  144.         SET "MediaType=Video"
  145.         SET /A MediaTypeVideo+=1
  146.         EXIT /B
  147.     )
  148. )
  149. SET "MediaType=File"
  150. EXIT /B
  151.  
Advertisement
Add Comment
Please, Sign In to add comment