可执行python文件sys不接受“(”ch

2024-05-16 00:05:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试编写一个python文件,它接受命令行输入并执行一些操作。输入将由a-z、[、]、(和)组成。我做了以下程序只是为了检查我是否可以继续:

#!/usr/bin/env python
import sys

print str(sys.argv)

我做了chmod +x program并尝试调用./program qwerty (abc) [hi],它返回:

-bash:意外标记“(”附近出现语法错误

有没有办法改变程序,使其接受参数中的括号?你知道吗

注意:我也试过把方括号放在圆括号之前,它会返回相同的错误。你知道吗


Tags: 文件import程序envbinusrsysprogram
1条回答
网友
1楼 · 发布于 2024-05-16 00:05:10

在调用脚本时,脚本对shell语法无能为力。shell首先解析命令行。您必须转义或引用shell中具有特殊含义的字符(包括大多数标点字符):

./program qwerty \(abc\) '[hi]'

相关问题 更多 >