我使用TeamForge的CLI在缺陷跟踪器部分创建工件。CLI文件/可执行文件称为"ctf“,没有扩展名。我想使用python脚本来创建工件,但最多只能执行一个命令。我想一次制造一个窃听器。这是我到目前为止掌握的代码:
import os
os.system("./ctf go tracker1234; # going to Defects section
create; # creating an artifact
set title This Is A Title; # setting artifact's fields
set description desc123;
set Product [Product 23];
set build_number Not known;
set Severity Catastrophic;
set steps_to_reproduce 1st comment;
set Component [component 4];
set Version [version 19];
commit) # saving the artifact on TeamForge以下是我一直在犯的错误:
sh: 1: create: not found
sh: 1: commit: not found因此,我认为这些命令不是按我指定的顺序或顺序执行的。这意味着每个命令都是单独执行的。有什么建议可以让这些命令按照我指定的顺序运行吗?
如果需要进一步解释,请告诉我。
更新
我刚刚发现您可以这样做:go tracker1234 create,这是一个步骤中的两个步骤
发布于 2015-01-16 15:31:27
您可以尝试向ctf引用您的论点;只需查看以下内容:
>>> os.system("echo hi; echo again;")
hi
again相对于:
>>> os.system("echo 'hi; echo again;'")
hi; echo again;分号终止shell中的命令。如果你的参数包含分号,你必须引用它们,这样它们就不会打破你的参数列表。
但是,根据CTF指南,他们使用多个命令来处理这种情况的方法似乎是将它们放入脚本中,并使用以下方法执行:
./ctf script.txt发布于 2015-01-16 16:46:12
若要在标准输入上将信息传递给程序,可以使用
或者,您的程序可能有一些“批处理模式”,允许您在命令行或文件中提供命令集,但从CTFCLI手册页的角度来看,这似乎不太可能。
https://stackoverflow.com/questions/27986865
复制相似问题