![](/img/trans.png)
[英]bash: syntax error near unexpected token `('…how do I fix it?
[英]-bash: syntax error near unexpected token `do'
我在我的 Mac 终端上执行以下操作:
sudo for i in `seq 0 9`; do nohup my_command > log_$i.txt & done
但我收到以下错误:
-bash: syntax error near unexpected token `do'
有什么问题,我该如何解决?
附言
我在这里测试了人们的一些建议,它们是:
1)
(base) user@SERVER:/directory$ sudo for i in `seq 0 9`; do nohup my_command > log_$i.txt &; done
-bash: syntax error near unexpected token `do'
2)
(base) user@SERVER:/directory$ sudo for i in `seq 0 9`; do nohup my_command > log_$i.txt ; done
-bash: syntax error near unexpected token `do'
3)
(base) user@SERVER:/directory$ sudo for i in `seq 0 9`; do nohup my_command > log_$i.txt done
-bash: syntax error near unexpected token `do'
4)
(base) user@SERVER:directory$ sudo bash -c for i in `seq 0 9`; do nohup my_command > log_$i.txt & done
-bash: syntax error near unexpected token `do'
通过 sudo 运行for
不起作用,因为 sudo 需要一个command 。 您可以改为通过 bash 运行循环:
sudo bash -c 'for i in {0..9}; do nohup command > log_$i.txt & done'
您不需要使用seq
命令,因为 bash 具有{0..9}
来支持“范围”循环。
有关&
的更多信息,请参阅bash 作业控制(它将“作业” - 您运行的命令 - 置于后台)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.