cmd.exe(WSL)からbashへのコマンド転送は機能しません。

cmd.exe(WSL)からbashへのコマンド転送は機能しません。

Linux用のWindowsサブシステム(Ubuntu)が有効/構成されたWindows 10コンピュータを使用しています。私の問題を説明するために2つのシナリオを紹介します。

シーン1:

  1. 私はcmd.exe促し始めた
  2. 私はプロンプトbashに従ってcmd.exe実行します
  3. (内部的に)私の場合は、(神経画像解析パッケージから)呼び出されたbash特定のコマンドを実行します。dwiextract

正しく機能すると、パッケージが正常にインストールされたことを示します。

シナリオ 2:

  1. 私はcmd.exe促し始めた
  2. bash次の構文を使用して、同じコマンドを直接渡してみました。cmd.exebash -c dwiextract

わかりましたcommand not found

(注:わかりました。bash -c ここ他の場合でも正常に使用されました。 )

下の画像は私がしたことを正確に示しています。

サンプルグラフ

私の質問:どちらの場合も同じでなければなりませんか?シナリオ1が機能し、シナリオ2が機能しないのはなぜですか?

とても感謝しています。

答え1

bashをインタラクティブシェル(-iオプションを含む)として実行することで問題を解決しました。

それは:bash -c -i <command>

答え2

それ以外は... bash -c -i "..."これは私にとってうまくいきます

wsl -d Debian -u myname -e dwiextract

また、パラメータを使用して

wsl -d Debian -u myname -e uname -a

関連情報