У меня есть двоичный файл, который я отлаживаю удаленно, один из способов отправить входные данные в этот файл - бросить
echo "input" > /proc/pid/fd/0
, когда я делаю выше, входные данные были получены двоичным файлом, но я не могу смоделировать нажатие клавиши, и это заставляет меня переключаться на этот двоичный файл и каждый раз нажимать клавишу ввода.
вот пример
#include <stdio.h>
int main () {
char str[50];
printf("Enter a string : ");
gets(str);
printf("You entered: %s", str);
return(0);
}
, когда вы запускаете вышеуказанную программу и отправляете ввод с использованием
echo "input" > /proc/pid/fd/0
вышеупомянутая программа получит ввод, но она не будет нажимать клавишу ввода
, поэтому есть способ сделать это с помощью файлового дескриптора двоичного файла или любого другого быстрый способ?
в моем случае нажатие клавиши - это просто клавиша ввода
edit:
echo -en 'input\r' > /proc/pid/fd/0
или
echo -en 'input\x0d' > /proc/pid/fd/0
не будет работать, потому что терминал будет думать, что это ведомое устройство, отправляющее на выход, оно не будет отправлено на стандартный интерфейс ведомого устройства