我目前正在尝试将bash命令的结果放入Cheetah变量中:
#set $name = #echo '$input.element_identifier' + ".phy" | cut -d _ -f 1“$input.element_identifier”是(某种程度上)到以前输入文件名称的链接(我试图在Galaxy (一种生物信息学软件)一节中这样做)
我的问题是猎豹不能识别回波命令中的“$”.我尝试过很多其他语法,但问题仍然存在(所以我不知道命令的其余部分是否正确)
这是一个相当具体的问题(与银河软件的管理和使用有关),我希望我能说清楚。
谢谢
发布于 2017-10-25 21:27:15
目前的方法有两个错误:
#echo不执行OS命令,#echo执行Python表达式。#echo不返回结果,#echo将结果放入输出流(#echo或任何输出)。要执行OS命令,您需要os.system()或subprocess.Popen()。要分配命令的结果,您当然需要捕获命令的stdout,Popen更好地调整了任务。
就像这样:
#import subprocess
#set $name = $subprocess.check_output($input.element_identifier + '.phy | cut -d _ -f 1', shell=True)https://stackoverflow.com/questions/46936126
复制相似问题