次の違いを理解しようとしています
アプローチ 1:
- bash シェルを起動する
- bash シェルでコマンドを入力します
my_command myargs
アプローチ 2:
- bash シェルを起動する
- 以下を直接実行
my_command myargs | /bin/bash/
コマンドはアプローチ 1 ではパスしますが、アプローチ 2 ではパスしません。両方のアプローチが同等であると考えていました。もちろん、アプローチ1では、my_commandを実行する前にコマンドを実行したり、パス変数を変更したりしていません。アプローチ 2 では、まったく新しいシェルを作成し、コマンドをパイプします。
誰かが違いを説明できますか?$PATH、環境変数などがありませんか? もしそうなら、どうすればエコー/見つけることができますか?