WSLからHTMLファイルをChromeで開く
概要
WSL上で、HTMLファイルをChromeで開く方法がすぐ見つからなかったのでエイリアスを定義して簡単にできるようにした
結論
.zshrcまたは.bashrcに以下のようなエイリアスを書いておけばいい
alias chrome='(){/mnt/c/Program\ Files\ \(x86\)/Google/Chrome/Application/chrome.exe $(wslpath -w $(realpath $1))}'
実行例
$chrome /tmp/cover302247211/coverage.html
=> HTMLがローカルPCのChromeで開く
参考
説明
1.chromeのパスを確認
自分はChromeがWindowsのCドライブのProgram Files (x86)以下にあるので、
$ls /mnt/c/Program\ Files\ \(x86\)/Google/Chrome/Application/chrome.exe '/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe'*
このパスを指定すればChromeでHTMLファイルが開く
ちなみにURLを指定するとそのページが開く
例
/mnt/c/Program\ Files\ \(x86\)/Google/Chrome/Application/chrome.exe https://www.yahoo.co.jp/
=> yahooがChromeで開く
2.HTMLファイルのWindows上でのパスを取得する
このようなファイルをWSL上で扱っているとして、/tmp/cover302247211/coverage.html
Windows上でのパスを取得するには以下のようにすればいい(Windows 10の場合)
$wslpath -w $(realpath /tmp/cover302247211/coverage.html) \\wsl$\Ubuntu\tmp\cover302247211\coverage.html
3.関数化する
以上を踏まえたうえで、chrome XXXX.html
のコマンドだけでHTMLファイルを開けるように関数化する
alias chrome='(){/mnt/c/Program\ Files\ \(x86\)/Google/Chrome/Application/chrome.exe $(wslpath -w $(realpath $1))}'