WSLのプログラムをWSLに入らずに実行

Windows

WSL2にある実行ファイルをWSLにログインせずに実行したいというような場合に使えるコマンドです。

wsl -e <command>

この-eは–execと同じです。

また、この wsl -e では.bashrcや.profile等のファイルは読み込まれません。
つまり、/usr/bin/以外に置いてあるPATHを通した実行ファイルや、LD_LIBRARY_PATHなどの環境変数を使用するプログラムは実行できません。
そのような場合はBashを通してコマンドを実行します。

wsl -e bash -l -c <command>
wsl -e bash -l -c "<command> <option>"

のような感じです。
この場合、/etc/profileや~/.profileの環境変数は認識されます。
注意点として、~/.bashrcは認識されません。

コメント

タイトルとURLをコピーしました