次のようなターゲットを持つWindowsショートカットを作成しました
"C:\Windows\System32\bash.exe" php /c/script.php
(私はこれを実行するためにphp cliのwindows verisonを使用することができますが、好奇心からです)
ショートカットをクリックすると、コマンドウィンドウが開いて閉じます(スクリプトの実行に数分かかるはずです)。
Windowsのbash.exeにコマンドをパイプする方法はありますか?
これがWSLの場合は、bash.exe -c "実行するコマンド"を使用します。
C:\ Windows\System32\bash.exe -c "vi〜/ .bashrc"
または
C:\ Windows\System32\bash.exe -c "php /mnt/c/script.php"
まず、 bash.exeは廃止予定 です。コマンドラインではwsl.exe
を使用する必要があります。 WSLの相互運用性機能には、Windows Insidersビルド17063以降を使用してください。あなたのケースでは、これは両方ともうまくいくかもしれません:
wsl.exe php /mnt/c/MyFiles/test.php
wsl.exe --exec php /mnt/c/MyFiles/test.php
wsl.exe
の使用情報は次のとおりです。
使用法:wsl.exe [引数] [オプション...] [コマンドライン]
Linuxバイナリを実行するための引数:
If no command line is provided, wsl.exe launches the default Shell. --exec, -e <CommandLine> Execute the specified command without using the default Linux Shell. -- Pass the remaining command line as is.
詳細については、 WSLとWindowsの相互運用性 を参照してください。