стыковка Shell и java

Discussion in 'Безопасность и Анонимность' started by Noodle23, 16 Feb 2007.

  1. Noodle23

    Noodle23 New Member

    Joined:
    18 Jan 2007
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    Добрый день. Совсем недавно столкнулся с linux системами... ну и так далее, не интересно.

    есть проблема, нужно реализовать "стыковку" shell и java. то есть, например: под линуксом запущена программа на java. есть скрипт на shell, из него мне нудно передать данные в программу на java, а потом обратно в скрипт на shell.

    хочу сразу заметить, что linux не новый, ядро 2.4.32

    самое простое, что пришло в голову - это через создание файлов, но это как-то по-лузерски =)
     
  2. hsi

    hsi Member

    Joined:
    11 Sep 2006
    Messages:
    214
    Likes Received:
    61
    Reputations:
    7
    Есть специальный shell на java - Jsh. По-моему именно для этих целей он и создан.

     
  3. Stefun

    Stefun Elder - Старейшина

    Joined:
    19 Nov 2006
    Messages:
    48
    Likes Received:
    29
    Reputations:
    11
    Мне кажется проще передавать данные как аргументы приложению на Java.
     
  4. hsi

    hsi Member

    Joined:
    11 Sep 2006
    Messages:
    214
    Likes Received:
    61
    Reputations:
    7
    Stefun
    Этим Jsh и занимается.
     
  5. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    727
    Reputations:
    266
    приду домой - скажу. Можно получить Io потоки запущенного приложения
     
  6. Noodle23

    Noodle23 New Member

    Joined:
    18 Jan 2007
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    когда необходимо передать параметры из shell в java, то java программа уже запущена, поэтому через аргументы не получится, а Jsh, как я понял, и запускает java программу из shell.
     
  7. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    727
    Reputations:
    266
    Runtime r = Runtime.getRuntime();
    p = r.exec("bash");

    p будет иметь методы getInputStream() и getOutputStream()
     
  8. Noodle23

    Noodle23 New Member

    Joined:
    18 Jan 2007
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    nerezus, насколько я понимаю, ...exec("bash") Запускает новый shell, а необходимо передавать из /sbin/hotplug, когда присоединяеться usb