Nowe posty

xx Problem ze sterownikami. (5)
2024-04-13, 21:25:16
xx Instalacja xfce4 (2)
2024-04-13, 16:20:17
xx Serie kompilacji bez instalacji dla “emerge” w Gentoo (2)
2024-04-08, 18:40:04
xx Plasma 6 w Neonie ssie trochę mniej ... (17)
2024-04-05, 10:03:46
xx Problem z Linux Lite po instalacji (3)
2024-04-03, 14:23:40
xx Jak właczyć num locka przy starcie systemu debian 12? (12)
2024-04-02, 17:43:54
xx Brak dźwieku w systemie. (5)
2024-04-02, 16:13:41
xx Dystrybucja pod HP Omen (7)
2024-03-29, 11:33:05
xx [Poradnik] Wyszukiwanie Sterowników (2)
2024-03-27, 21:08:23
xx Ile pingwinów? (1)
2024-03-27, 08:59:24

Autor Wątek: Wysyłanie komendy na stdin do procesu na bg  (Przeczytany 4070 razy)

  • Gość
Wysyłanie komendy na stdin do procesu na bg
« dnia: 2010-02-27, 15:18:24 »
Witam! Jeżeli nie trafiłem z działem, to przepraszam.
Mam pytanie:
uruchamian program poprzez:
nohup ./djkajdksdajsd & echo $!

czy jest szansa, znając PID, aby wpisać coś na stdin tego programu. Zależy mi także, aby można to było zrobić przez jedną komendę a nie jakiś interactive mode.

szukam czegoś co miałoby postać: echo 'data' | send 8765
lub send 8765 'data'.

Pozdrawiam, i proszę o wyrozumiałość, peku33

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3056
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Wysyłanie komendy na stdin do procesu na bg
« Odpowiedź #1 dnia: 2010-02-27, 20:55:25 »
Masz 2 drogi:

1. Nie sprawdzone, na moje oko niezbyt pewne - w katalogu /proc/$PID/fd masz deskryptory plików połączonych z procesem. Pierwsze 3 to OIDP kolejność odpowiednio stdin, stdout i stderr. Nie jestem pewien, czy da się coś "wstrzelić" do takiego deskryptora tak, żeby aplikacja to zassała.

2. "The right way": tworzysz nazwany potok za pomocą mkfifo, odpalasz aplikację tak, aby zasysała z tego potoku a potem sobie wrzucasz tam dane skąd tam chcesz.
mkfifo /tmp/kontrolka
nohup ./djkajdksdajsd < /tmp/kontrolka & echo $!
a potem skądkolwiek
echo "data" > /tmp/kontrolka
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

  • Gość
Wysyłanie komendy na stdin do procesu na bg
« Odpowiedź #2 dnia: 2010-02-27, 23:07:55 »
Dzięki wielkie. Metoda 2 zadziałała!
Tego szukałem. Temat do zamknięcia.
Nie ma tu czegoś jak karma?