问题标签 [shlex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
99 浏览

python-2.7 - shlex.split - 列表索引超出范围

我目前正在尝试打开一个文件并使用 shlex.split 来分割行。这是文本文件中两行的示例。

设置组地址“不信任”“这是一个测试组”
设置组地址“不信任”“这是一个测试组”添加“测试地址”

当我运行我的代码时,它显示“IndexError:列表索引超出范围”。我确实意识到这是因为它无法识别我的 linetoken [5]。由于两行的开头几乎相同,我如何让代码超出第一行并转到第二行。我当前的代码如下。用户输入和计数用于输入区域,然后使用输入区域循环,但是,我删除了大部分代码以尝试首先解决此问题。

0 投票
1 回答
74 浏览

python - 如何通过 subprocess.communicate 将字符串变量列表传递给标准输出

我可以成功地硬编码我的值,如下所示:(我的应用程序启动并传递了参数,它运行就像我在手动输入每个参数后按回车一样,就像我通过命令行运行它一样,手动输入参数和在每个之后点击输入):

但我想用变量替换这些硬编码值,但它无法成功工作,如下所示:

输出打印如下 - 应用程序已打开但没有任何反应

C:\Program Files\app\Bin\current\myapp.exe ['13', '20180212.log', '20180212.txt', '20180212fix.txt']

没有错误,应用程序只是将其作为一行输入接收,而不是在每个变量之后处理返回或输入 - 如果我查看在 Windows 进程资源管理器中打开的进程,它会显示一次传递的所有参数

0 投票
1 回答
147 浏览

python - | 不在 Subprocess.call 中工作

每当我在带有“|”的子进程中使用命令时 在它不起作用时它有命令“|”的输出 未知,请尝试“在链接帮助中”。或者当我把这个:

它给出了以下输出:

0 投票
1 回答
1445 浏览

python - python子进程和shlex

我正在尝试使以下 python 代码正常工作,但我无法使语法正常工作。有人可以帮忙吗?

0 投票
2 回答
670 浏览

python - 如果字符串在输出中,则终止子进程

如果输出中有字符串,我正在尝试终止子进程 pid,但它不起作用。怎么了?

0 投票
1 回答
56 浏览

python - 处理文件名时解析输入

当输入是路径列表时,如何解析输入?

我正在寻找一种干净的方式来获取foo.jpg "C:\Program Files\bar.jpg"列表中的输入['foo.jpg', 'C:\Program Files\bar.jpg'](注意第二条路径中的引号,因为 中的空格Program Files)。

是否有类似argparse但对于input()s 的东西?
处理它的最佳方法是什么?

0 投票
2 回答
295 浏览

python - 如何使用 Python shlex 解析 bash 数组?

输入:

期望的输出

我想得到这个输出:

试图

我试着玩了一下shlex,但是数组的解析很糟糕:

问题

有没有办法自动将值解析ForwardPort到列表中?

注意:不要在家里复制,这是一个糟糕的设计决定,导致了这个令人费解的问题:S

0 投票
3 回答
2471 浏览

python - 如何在字符串中的子字符串周围添加括号?

我需要在这样的字符串中的子字符串(包含 OR 布尔运算符)周围添加括号:

我需要达到这个:

我试过这段代码:

但这似乎不起作用,代码只是返回原始消息的多个副本,并且没有在句尾添加括号。我该怎么办?

0 投票
1 回答
66 浏览

python - Python自定义解析器未检测到参数

我创建了一个解析器来从字符串中提取变量并用值填充它们,但是在检测字符串中的多个值时遇到了很多困难。让我举例说明:

以下消息包含变量“mass”、“vel”、布尔参数(或字符串)“AND”、“OR”:

使用上述消息,解析器应该检测并返回包含值的变量字典:

这是代码:

上面的代码只返回以下字典:

'this is just another descriptor'未检测到“OR”列表 ( ) 的第一个元素。我哪里错了?

编辑:我尝试更改属性 = ['mass', 'vel', 'OR', 'OR', 'AND'] 但这返回: {'OR': ['that new fangled thing'], 'OR': ['那个新奇的东西'],'vel':[18],'AND':['那个新东西'],'mass':[12.0]}

0 投票
0 回答
20 浏览

bash - bash 中 shlex.split 的等价物,没有 python

是否有等效于 python 的 shlex.split 的 bash 内置函数或表达式?如果它不仅可以处理空格,而且可以处理任何 IFS,那就太好了。


我有一个包含一堆简单 bash 命令的文件。

我想要做的是通过将每一行上的命令拆分为参数数组来逐行处理这个文件。我可以用 shlex.split 在 python 中简单地做到这一点:

请注意,我对非 bash 解决方案或使用 eval 或手工转义的解决方案不感兴趣。以下示例不是一个好的解决方案,因为它允许命令注入。