
當我從 bash shell 執行命令:
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」。