Windows 11 の WSL での話です。 久しぶりの使おうとしたら 以前に設定した open コマンドが使えなくなっていた。 調べたところ firefox.exe へのパスが変わっていた。 Firefox がどのパスにインストールされるかは、環境によってマチマチかもしれないのだが、とりあえず、ここの環境で動いた例を書き残します。
以下のスクリプトを ~/bin/open などパスを通しているディレクトリに配置して chmod u+x ~/bin/open して実行権を付与しておく。 /mnt/c/Users/foo/AppData/Local/Mozilla Firefox/firefox.exe に Firefox がインストールされていることが大前提です。
foo の部分は お使いのWindowsで設定したユーザー名に読み替えてください。
#!/bin/bash
if [[ $1 =~ html$ ]]; then
/mnt/c/Users/foo/AppData/Local/Mozilla\ Firefox/firefox.exe "$(wslpath -w "$(pwd)/$1")"
else
explorer.exe "$(wslpath -w "$(pwd)/$1")"
fi
以上です。