Чтение переменных в интерактивном режиме из терминальной команды

Я пытаюсь прочитать переменную из терминальной команды, которая основана на программном обеспечении "GROMACS" и выполняется следующим образом:

gmx pdb2gmx -f test.pdb -glu -asp -ignh

Эта команда приводит к интерактивному сеансу, где я получаю несколько номеров остатков, и мне нужно указать 0 или 1. См. Изображение ниже (последние 20 строк)

вывод командной строки

Моя цель состоит в том, чтобы прочитать число этих остатков и сохранить их в переменных, а затем использовать цикл if else для предоставления 0 или 1. Обратите внимание, что я не могу использовать эти параметры

echo "1" | gmx pdb2gmx -f test.pdb -glu -asp -ignh

printf "1\n1\0\n" | gmx pdb2gmx -f test.pdb -glu -asp -ignh

потому что есть так много интерактивных опций, и трудно сосчитать это. Я нашел несколько способов, основанных на expect но я не знаком с языком. Если кто-нибудь знает другой способ, пожалуйста, помогите мне.

0 ответов

Другие вопросы по тегам