Перейти к содержимому

Фотография

Работа Silktest с удаленной unix-машиной используя Plink


  • Авторизуйтесь для ответа в теме
В теме одно сообщение

#1 smartym

smartym

    Новый участник

  • Members
  • Pip
  • 3 сообщений

Отправлено 14 марта 2012 - 18:25

Возникла такая проблема при работе Silktest с удаленной unix-машиной используя Plink

Проблема в том что после запуска выполняемого файла выполняется несколько процессов (несколько SQL-запросов ).

Для определения каждого процесса используется команда ps (без атрибутов).

Если я запускаю файл RunFile.sh руками то все замечательно (Использую Putty честно захожу и запускаю файл).

Но мне надо запустить этот же файл Silktest и для этого я использую Plink и команда ps (без атрибутов) не работает уже.

Ситуацию спасает ps -ef , но но это очень замедляет работу процессов. (если напрямую запрос отрабатывался 6 секунд, то используя Plink и ps -ef работает уже 6 минут)

Подскажете возможно можно использовать другие атрибуты команды ps.

Как в этой ситуации отслеживать нужный процесс?


код Silktest :

[-] main ()
[ ] string sLine = Dir +"\plink -l {sLogin} -pw " + sPwd+ "{sSvanyc} -batch pwd; cd home; RunFile.sh"
[ ] Anytype Log
[ ] Sys_Execute (sLine,Log)
[ ] listprint (Log)
[ ] exit


файл RunFile.sh для выдачи информации по процессам содержит строку:

ProcessCount=`ps -ef | grep $ProcessID | wc -l`
  • 0

#2 smartym

smartym

    Новый участник

  • Members
  • Pip
  • 3 сообщений

Отправлено 15 марта 2012 - 09:55

Возникла такая проблема при работе Silktest с удаленной unix-машиной используя Plink

Проблема в том что после запуска выполняемого файла выполняется несколько процессов (несколько SQL-запросов ).

Для определения каждого процесса используется команда ps (без атрибутов).

Если я запускаю файл RunFile.sh руками то все замечательно (Использую Putty честно захожу и запускаю файл).

Но мне надо запустить этот же файл Silktest и для этого я использую Plink и команда ps (без атрибутов) не работает уже.

Ситуацию спасает ps -ef , но но это очень замедляет работу процессов. (если напрямую запрос отрабатывался 6 секунд, то используя Plink и ps -ef работает уже 6 минут)

Подскажете возможно можно использовать другие атрибуты команды ps.

Как в этой ситуации отслеживать нужный процесс?


код Silktest :

[-] main ()
[ ] string sLine = Dir +"\plink -l {sLogin} -pw " + sPwd+ "{sSvanyc} -batch pwd; cd home; RunFile.sh"
[ ] Anytype Log
[ ] Sys_Execute (sLine,Log)
[ ] listprint (Log)
[ ] exit


файл RunFile.sh для выдачи информации по процессам содержит строку:

ProcessCount=`ps -ef | grep $ProcessID | wc -l`


Проблема была в том что в выполняемом файле вызывались еще несколько файлов и они выполнялись в фоновом режиме. Если убрать символ & то работает, но выполнение процессов идет один за другим идет, а не параллельно.
  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных