-
-
Save en129/faf09fa7e6b67ad9cdaa4a621ed49e9b to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @echo off | |
| rem 作成者:en129(https://x.com/en129) | |
| rem 遅延環境変数を有効にする | |
| setlocal enabledelayedexpansion | |
| rem エスケープ文字を取得して変数ESCに格納(色付けの準備) | |
| for /F %%a in ('echo prompt $E ^| cmd') do set "ESC=%%a" | |
| rem カラー設定の定義 | |
| set "RED=!ESC![31m" | |
| set "GREEN=!ESC![32m" | |
| set "YELLOW=!ESC![33m" | |
| set "CYAN=!ESC![36m" | |
| set "RESET=!ESC![0m" | |
| rem クリップボードからテキストを取得 | |
| set URL= | |
| for /f "delims=" %%i in ('powershell -c "gcb -f text"') do ( | |
| set "URL=%%i" | |
| ) | |
| rem クリップボードが空の場合は終了 | |
| if "!URL!"=="" ( | |
| echo !RED!クリップボードにテキストがありません。!RESET! | |
| timeout /t 3 >nul | |
| exit /b | |
| ) | |
| rem テキストの先頭4文字を取得して「http」かどうか判定 | |
| set "prefix=!URL:~0,4!" | |
| if /i not "!prefix!"=="http" ( | |
| echo !RED!クリップボードの内容はURLではありません。処理を中断します。!RESET! | |
| echo !YELLOW!取得したテキスト: !URL!!RESET! | |
| timeout /t 3 >nul | |
| exit /b | |
| ) | |
| echo !CYAN!URL: !URL!!RESET! | |
| rem yt-dlpでURLを変換 | |
| set NEWURL= | |
| for /f "usebackq delims=" %%A in (`%localappdata%low\VRChat\VRChat\Tools\yt-dlp.exe --quiet --get-url "!URL!"`) do set "NEWURL=%%A" | |
| rem 変換に失敗した場合(結果が空の場合)は終了 | |
| if "!NEWURL!"=="" ( | |
| echo !RED!yt-dlpでのURL変換に失敗しました。!RESET! | |
| pause | |
| exit /b | |
| ) | |
| rem 変換したURLをクリップボードにコピー | |
| echo|set /p="!NEWURL!"|clip | |
| rem 変換完了のメッセージ | |
| echo. | |
| echo !GREEN!変換完了!新しいURLをクリップボードにコピーしました。!RESET! | |
| echo !YELLOW!変換後のURL:!RESET! | |
| echo !CYAN!!NEWURL!!RESET! | |
| timeout /t 3 >nul | |
| exit /b |
Author
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
フォーク元からの変更点
・変換後の文字列をコマンドとして扱う挙動があったのを修正した
・画面文字を色付けして見やすくした
・Cドライブ以外のディレクトリにbatファイルを置いても実行できるようにした
・クリップボードの文字があるか、httpから始まるか判定を追加した
・処理後3秒待ってからウィンドウを閉じるようにした