WSL の画像ファイルや PDF ファイルを GUI で確認したいとき、Windows のアプリケーションからコマンド一発で開けないかと思い、ファイルパスを変換する関数を書いた。
Windows のアプリケーションのコマンドに渡す前に、ファイルのパスを変換して渡してあげれば、一発になる。一応。
以下の関数を定義し
function to_winpath() {
wsl_path=`powershell.exe -Command 'echo ($env:LOCALAPPDATA + "\lxss")' | tr -d '\r'`
abs_path=`readlink -f $1`
internal_path=${abs_path//\//\\}
echo "${wsl_path}${internal_path}"
}
次のように、コマンドに渡してあげればいい。このコマンドではエクスプローラーで PDF ファイルを開いている。
$ explorer.exe `to_winpath sample.pdf`
しかし、タイプが増えるので面倒。