bash + bashからtcshでコマンドを実行する

bash + bashからtcshでコマンドを実行する

bash シェルからコマンドを実行すると:

bash
for i in 1 2 3 ; do echo $i ; done
1
2
3

しかし、tcsh に切り替えて実行したい場合:

    tcsh
    bash -c for i in 1 2 3 ; do echo $i ; done
    i: -c: line 1: syntax error near unexpected token `newline'
    i: -c: line 1: `for'
    i: Undefined variable.

なぜエラーが発生するのかアドバイスをお願いします (bash -c から for ループを実行しますが、同じですか? また、何を修正する必要がありますか?)

答え1

引用する必要があります:

bash -c 'for i in 1 2 3 ; do echo $i ; done'

あなたの例では、bash が実行している唯一のコマンドは「for」だけです。

関連情報