报错处理:sh: 1: Syntax error: “(“ unexpected
Posted UQI-LIUWJ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了报错处理:sh: 1: Syntax error: “(“ unexpected相关的知识,希望对你有一定的参考价值。
1 问题描述
也是一个很简单的脚本
import os
for i in range(48):
print(i)
s='python3 test.py --list=list(range(' +str(i)+ ')) '
os.system(s)
报的错是sh: 1: Syntax error: "(" unexpected
2 分析原因
linux路径中存在字符分别是空格、左括号、右括号、 &时会出现这个问题:
python在调用os.system()命令或者command.getoutput()等等系统调用函数时,如果直接把路径传进去,就会报这个错误。
python使用系统调用的正确姿势应该先对路径进行转义符转移
3 解决方法
import os
for i in range(48):
print(i)
s='python3 test.py --list=list\\(range\\(' +str(i)+ '\\)\\) '
os.system(s)
以上是关于报错处理:sh: 1: Syntax error: “(“ unexpected的主要内容,如果未能解决你的问题,请参考以下文章
同一脚本sh 脚本名 报Syntax error: "(" unexpected而./脚本名不报错,求解!!
解决Linux下编译.sh文件报错 unexpected operator Syntax error: word unexpected
linux shell脚本 总报错sh11-2.sh: 9: Syntax error: "(" unexpected
Linux执行sh脚本报错: Syntax error: Bad fd number