繁体   English   中英

用于在sublime文本中打开文件的python脚本

[英]python script to open a file in sublime text

语境:

我正在修改一个小的python脚本,所以我从Xcode调试器运行的lldb命令的输出将输出到一个文件并以崇高的文本打开。

import lldb
import os
import subprocess

def print_to_file(debugger, command, result, dict):
  #Change the output file to a path/name of your choice
  f=open("/Users/venkat13/pcomponents.txt","w")
  debugger.SetOutputFileHandle(f,True);
  debugger.HandleCommand(command)
  path = "/Users/venkat13/pcomponents.txt"
  sublimePath = '/Applications/Sublime\ Text.app'
  subprocess.Popen("%s %s" % (sublimePath, path))


def __lldb_init_module (debugger, dict):
  debugger.HandleCommand('command script add -f po.print_to_file print_to_file ')

问题:

上面的脚本正在生成文件,但它不会以崇高的文本打开。 我哪里错了?

这是因为Popen不会直接将整个字符串传递给shell,除非你指定shell=True (在我看来,你希望命令的工作方式与你通常在shell上键入的方式相同)。

而是使用:

subprocess.Popen([sublimePath, path])

或者,( 不推荐 ):

subprocess.Popen("%s %s" % (sublimePath, path), shell=True)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM