Возможно ли, чтобы одно приложение, работающее не с правами root, отправляло нажатия клавиш терминальному приложению?

Используйте grepдля сопоставления начала нужных строк (проверьте, не совпадает ли оно с другими строками):

grep -E '^(Nmap scan report for|Host script results:|\|[ _])' INPUT.txt

Или sedи шаблон диапазона (, аналогичный решению awk)

sed -n '/^Nmap scan report for/,/^|_/p' INPUT.txt
  • начало:^Nmap scan report for
  • конец:^|_

0
05.05.2020, 15:04
1 ответ

Да, вы можете сделать это с помощью псевдотерминалов -. Это то, как работают такие программы, как сервер SSH, экран GNU и все эмуляторы терминала с графическим интерфейсом, чтобы представить терминал программам, которые они запускают.

С помощью screenдовольно просто проверить это самостоятельно :Запустите сеанс screen, затем запуститеscreen -X 'sudo id\nsecretpassword\n'(изнутри или снаружи этогоscreen).

Вы увидите команду и ее вывод в сеансе screen:

$ sudo id
[sudo] password for ilkkachu:
uid=0(root) gid=0(root) groups=0(root)
$
0
28.04.2021, 23:16

Теги

Похожие вопросы