fzf = subprocess.Popen(
[
"fzf",
],
stdin=subprocess.PIPE,
text=True,
)
< /code>
Поэтому я хочу, чтобы я был в состоянии записать напрямую в эту трубу из других перекачков. идентификатор. Как это: < /p>
python_process = multiprocessing.Process(
target=generate_input,
args=(fzf.stdin.fileno(),),
)
< /code>
В моем процессе я написал так: < /p>
os.dup(write_fd) # I thought it could help to resolve error with fd.
os.write(write_fd, "Any string".encode("utf-8"))
Это привело к Oserror: [Errno 9] Descriptor File . Я не понимаю, почему я получаю это, потому что все дескрипторы файлов унаследованы от родительского процесса. Чтобы убедиться, что я попытался позвонить в этот код в моем детском процессе. < /P>
_fd_types = (
("REG", stat.S_ISREG),
("FIFO", stat.S_ISFIFO),
("DIR", stat.S_ISDIR),
("CHR", stat.S_ISCHR),
("BLK", stat.S_ISBLK),
("LNK", stat.S_ISLNK),
("SOCK", stat.S_ISSOCK),
)
for fd in range(100):
try:
s = os.fstat(fd)
except:
continue
for fd_type, func in _fd_types:
if func(s.st_mode):
break
else:
fd_type = str(s.st_mode)
print(f"fd: {fd}, type: {fd_type}")
< /code>
Этот фрагмент напечатал, что мой дескриптор файла был доступен через функцию OS.FStat. Или, по крайней мере, некоторые проекты, которые используют Python таким образом. Я понимаю, что я могу подойти к этому другим способом.
Например: < /p>
child = subprocess.Popen(
[
"my_python_program --child",
],
stdout=subprocess.PIPE,
)
fzf = subprocess.Popen(
[
"fzf",
],
stdin=child.stdout,
)
< /code>
macm1, python3.12 < /p>
Но я действительно хочу научиться этому более "основным". Я буду очень благодарен за любую связанную информацию, спасибо.
Я пытаюсь заполнить ввод для моего FZF SRIPT из нескольких параллельных процессов. < /p> [code]fzf = subprocess.Popen( [ "fzf", ], stdin=subprocess.PIPE, text=True, ) < /code> Поэтому я хочу, чтобы я был в состоянии записать напрямую в эту трубу из других перекачков. идентификатор. Как это: < /p> python_process = multiprocessing.Process( target=generate_input, args=(fzf.stdin.fileno(),), ) < /code> В моем процессе я написал так: < /p> os.dup(write_fd) # I thought it could help to resolve error with fd. os.write(write_fd, "Any string".encode("utf-8")) [/code] Это привело к Oserror: [Errno 9] Descriptor File . Я не понимаю, почему я получаю это, потому что все дескрипторы файлов унаследованы от родительского процесса. Чтобы убедиться, что я попытался позвонить в этот код в моем детском процессе. < /P> _fd_types = ( ("REG", stat.S_ISREG), ("FIFO", stat.S_ISFIFO), ("DIR", stat.S_ISDIR), ("CHR", stat.S_ISCHR), ("BLK", stat.S_ISBLK), ("LNK", stat.S_ISLNK), ("SOCK", stat.S_ISSOCK), )
for fd in range(100): try: s = os.fstat(fd) except: continue for fd_type, func in _fd_types: if func(s.st_mode): break else: fd_type = str(s.st_mode) print(f"fd: {fd}, type: {fd_type}") < /code> Этот фрагмент напечатал, что мой дескриптор файла был доступен через функцию OS.FStat. Или, по крайней мере, некоторые проекты, которые используют Python таким образом. Я понимаю, что я могу подойти к этому другим способом.
Например: < /p> child = subprocess.Popen( [ "my_python_program --child", ], stdout=subprocess.PIPE, ) fzf = subprocess.Popen( [ "fzf", ], stdin=child.stdout, ) < /code> macm1, python3.12 < /p> Но я действительно хочу научиться этому более "основным". Я буду очень благодарен за любую связанную информацию, спасибо.
Рассмотрим процесс, выполняющий следующие действия, используя повторные вызовы для записи (2) для записи данных, в период, прежде чем он закрывается или делает fsync (2) или fdatasync (2), чтобы промыть на диск. только. Тем не менее, я считаю, что...
Я занимаюсь переработкой кода Python 2.7 на Python 3 в среде Microsoft Windows 10. Я использую подпроцесс в нескольких сценариях для параллельной обработки вызовов однопоточных приложений. Этот подход очень хорошо работает в версии 2.7, но в Python...
Я пытаюсь открыть PDF-файл с помощью приложения по умолчанию на MacOS, то есть предварительного просмотра, с помощью
import subprocess
doc = subprocess.Popen( )
и закройте его.
Я пробовал решения, описанные в разделе «Как завершить подпроцесс...
Я пытаюсь открыть PDF-файл с помощью приложения по умолчанию на MacOS, то есть предварительного просмотра, с помощью
import subprocess
doc = subprocess.Popen( )
и закройте его.
Я пробовал решения, описанные в разделе «Как завершить подпроцесс...
Я пытаюсь открыть PDF-файл с помощью приложения по умолчанию на MacOS, то есть предварительного просмотра, с помощью
import subprocess
doc = subprocess.Popen( )
и закройте его.
Я пробовал решения, описанные в разделе «Как завершить подпроцесс...