Windows 10 のバッチ ファイルで %~dp0 の末尾からスペースを削除する方法

Windows 10 のバッチ ファイルで %~dp0 の末尾からスペースを削除する方法

次のバッチファイルがあります:

set LOCAL_ROOT="%~dp0" 
setx BOOST_ROOT             "%LOCAL_ROOT%\boost"

このバッチファイルを実行すると、この値がBOOST_ROOTに設定されます。

BOOST_ROOT=D:\Local\ boost

ご覧のとおり、パス内に存在してはならないスペースがあります。どうすれば削除できますか?

答え1

必要なものは次のとおりです:

@echo off
set LOCAL_ROOT=%~dp0
setx BOOST_ROOT="%LOCAL_ROOT%boost"

REM the next two lines are for debugging, remove from final batch file:
echo %BOOST_ROOT%
pause

あるいは、最初の変数をまったく宣言せずに次のようにします。

@echo off
setx BOOST_ROOT="%~dp0boost"

を宣言するときに引用符は必要ありませんLOCAL_ROOT。また、コードにはいくつかの書式エラーがあるようです。 には%~dp0末尾のバックスラッシュが含まれていることに注意してください。

関連情報