Pythonの仮想環境でpgAdmin4を運用している場合、pip list --outdated コマンドを使うことで、新しいバージョンがあるかどうかを自動判定できます。
以下に、「現在のバージョンを確認し、更新が必要であればpgAdmin4の更新を行い、なければpgAdmin4を実行する」 バッチスクリプトを作成しました。
以下のコードを update&exec_pgadmin.bat という名前で保存して実行してください。
※ venv(仮想環境)を使用している前提で、スクリプトの冒頭で環境を有効化するようにしています。
@echo off
setlocal
cls
:: --- 設定エリア ---
:: 仮想環境のパスを適切に書き換えてください
set VENV_PATH=C:\path\to\your\venv
:: ------------------
echo [pgAdmin 4 Update Checker]
echo.
:: 仮想環境の有効化
if exist "%VENV_PATH%\Scripts\activate.bat" (
call "%VENV_PATH%\Scripts\activate.bat"
) else (
echo [Error] 仮想環境が見つかりません: %VENV_PATH%
pause
exit /b
)
echo アップデートがあるか確認中...
echo.
:: pipを使用して古いパッケージがあるかチェック
:: pgadmin4が含まれているかを確認
pip list --outdated | findstr /i "pgadmin4" > nul
if %errorlevel% equ 0 (
echo ===================================================
echo 新しいバージョンの pgAdmin 4 が見つかりました!
echo ===================================================
pip list --outdated | findstr /i "pgadmin4"
echo.
set /p CHOICE="アップデートを実行しますか? (Y/N): "
if /i "%CHOICE%"=="Y" (
echo.
echo アップデートを開始します...
python -m pip install --upgrade pip
pip install --upgrade pgadmin4
echo.
echo アップデートが完了しました。
) else (
echo アップデートをキャンセルしました。
)
) else (
echo pgAdmin 4 は最新です。
echo 現在のバージョン:
pip show pgadmin4 | findstr "Version"
)
echo.
pgAdmin4
pause
スクリプトの解説
- set VENV_PATH=…:pgAdmin 4をインストールしたフォルダパスを指定してください。ここが正しくないとスクリプトが動作しません。
- pip list –outdated:インストール済みパッケージの中で、PyPI(公式リポジトリ)に新しいバージョンが存在するものだけをリストアップします。
- findstr /i “pgadmin4”:リストの中から pgadmin4 という文字列を探します。見つかった場合(errorlevel が 0 の場合)のみ、更新処理へ進みます。
- set /p CHOICE:勝手に更新して設定が上書きされるのを防ぐため、ユーザーに Y/N の入力を求めます。
- pgAdmin4コマンドでpgAdmin4を実行します。
pgAdmin4実行結果



コメント