たまにみかけるもののあまり気にしてなかった ~ がけっこう重要なものでした
bat の if 文で空文字チェックしたいとき

if %1 == "" echo ERROR

としたら %1 が空だと

if  == "" echo ERROR

になって構文エラー
クオートをつけて

if "%1" == "" echo ERROR

にすると %1 が空のときにうまく動くけど 半角スペースを含む場合に引数に "" がすでにあるので

if ""a b"" == "" echo ERROR

になって構文エラー
展開時にクオート外したいと思って調べたら ~ を使えばはずせるというものでした

if "%~1" == "" echo ERROR

にすると

if "a b" == "" echo ERROR

となってうまくいきます