Pour les substitions (~f, ~n, etc.), à l'invite de commandes, tu fais :
for /?
c'est indiqué dans l'aide avec les exemples.
Pour le ~ tout seul, c'est simple, ça supprime les guillemets qui entourent les arguments, comme pour passer de :
call :addJar "%%~ff"
à
set CLASSPATH=%CLASSPATH%;%~1
Voilou