Я запускаю команду поиска для определенного файла, который, как я знаю, существует.Я хотел бы получить путь к этому файлу, потому что я не хочу предполагать, что я знаю, где находится файл.Насколько я понимаю, мне нужно перенаправить стандартный вывод, выполнить команду и записать вывод, повторно подключить стандартный вывод, а затем получить результаты.Проблема возникает, когда я получаю результаты ... Я не могу расшифровать их:
import os
from cStringIO import StringIO
stdout_backup = sys.stdout #Backup standard output
stdout_output = StringIO()
sys.stdout = stdout_output #Redirect standard output
os.system("find . -name 'foobar.ext' -print") #Find a known file
sys.stdout = stdout_backup #re-hook-up standard output as top priority
paths_to_file = stdout_ouput.get_value() #Retrieve results
Я нахожу все пути, которые мог бы хотеть, проблема в том, что paths_to_file выдает это:
Out[9]: '\n\x01\x1b[0;32m\x02In [\x01\x1b[1;32m\x027\x01\x1b[0;32m\x02]: \x01\x1b[0m\x02\n\x01\x1b[0;32m\x02In [\x01\x1b[1;32m\x028\x01\x1b[0;32m\x02]: \x01\x1b[0m\x02'
Понятия не имею, что с этим делать.Я хотел что-то вроде того, что предоставляет команда печати:
./Work/Halpin Programs/Servers/selenium-server.jar
Как сделать этот вывод пригодным для открытия файла?Если я могу получить то, что выводит команда печати, я могу открыть нужный файл.
Пожалуйста, переориентируйте вопрос, если я ошибаюсь.Спасибо!