【Windowsバッチファイル(.bat)】フルパスやファイル名から拡張子を取得する


この記事はプロモーションを含みます。

Windows

ホーム > コマンドプロンプト・バッチファイル リファレンス

Windowsのバッチで、フルパスやファイル名から拡張子を取得する方法を解説します。

はじめに

ここでは、下記パターンの拡張子の取得方法について説明します。

  • フルパスから拡張子を取得する(拡張子先頭の[.(ドット)]あり)
  • フルパスから拡張子を取得する(拡張子先頭の[.(ドット)]なし)
  • ファイル名から拡張子を取得する(拡張子先頭の[.(ドット)]あり)
  • ファイル名から拡張子を取得する(拡張子先頭の[.(ドット)]なし)

フルパスから拡張子を取得する

フルパスから拡張子を取得する方法を説明します。

.(ドット)あり

拡張子の先頭の「.(ドット)」を付ける場合のサンプルコードです。

@echo off

set fullpath="C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"

call :GET_EXTENSION %fullpath%

echo %ext%

pause
exit

:GET_EXTENSION
set ext=%~x1
exit /b

サンプルの実行結果です。

.exe
続行するには何かキーを押してください . . .

.(ドット)なし

拡張子の先頭の「.(ドット)」を付けない場合のサンプルコードです。

@echo off

set fullpath="C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"

call :GET_EXTENSION %fullpath%

echo %ext:~1%

pause
exit

:GET_EXTENSION
set ext=%~x1
exit /b

サンプルの実行結果です。

exe
続行するには何かキーを押してください . . .

ファイル名から拡張子を取得する

ファイル名から拡張子を取得する方法を説明します。

.(ドット)あり

拡張子の先頭の「.(ドット)」を付ける場合のサンプルコードです。

@echo off

set filename="msedge.exe"

call :GET_EXTENSION %filename%

echo %ext%

pause
exit

:GET_EXTENSION
set ext=%~x1
exit /b

サンプルの実行結果です。

.exe
続行するには何かキーを押してください . . .

.(ドット)なし

拡張子の先頭の「.(ドット)」を付けない場合のサンプルコードです。

@echo off

set filename="msedge.exe"

call :GET_EXTENSION %filename%

echo %ext:~1%

pause
exit

:GET_EXTENSION
set ext=%~x1
exit /b

サンプルの実行結果です。

exe
続行するには何かキーを押してください . . .

コメント

タイトルとURLをコピーしました