Linux за българи: Форуми

Програмиране => Общ форум => Темата е започната от: console в Mar 17, 2009, 10:46



Титла: Помощ за bash
Публикувано от: console в Mar 17, 2009, 10:46
Здравейте!

Налга ми се да напиша един bash script . Имам само основните познания по него.

Скрипта трябва да стартира програма и  да я спира след 3 минути.

Това което ми доиде на прима виста е следното

Код:
#!/bin/bash
./programa //minavat 3 minuti i programata trqbva da spre

Как може да стане това?


Титла: Re: Помощ за bash
Публикувано от: ANTIADMIN в Mar 17, 2009, 11:00
Със sleep не става ли?


Титла: Re: Помощ за bash
Публикувано от: console в Mar 17, 2009, 11:09
Кажи как да стане с sleep

Като му дам
sleep 180  ./programa
сътоветно ще се стартира след 3 мин а ако му дам
./programa sleep 180
Ефекта няма да е никакъв


Титла: Re: Помощ за bash
Публикувано от: ANTIADMIN в Mar 17, 2009, 11:19
А друга идея: Вземи от ps времето на стартиране и пусни while докато минат 3те минути. Не ползвам линукс, иначе щях да ти го напиша ;D ;D
$vreme="ps -alabala"
do './goso.sh'
    while ($vreme+3) ; exit
tyk nqkude burkam string s int, ma ko mi puka :roll:
Тва е на няква простотия горе, ма нали имаш знания на баш, пиши си го ;D


Титла: Re: Помощ за bash
Публикувано от: console в Mar 17, 2009, 11:24
Абе човек като си нямаш и на идея не пиши!!!

Като дадеш do programa
Програмата се страртира и скрипта не продължава на долу а седи и чака да се спре програмата и тогава изпълнява долните редове.

Аман!!!!


Титла: Re: Помощ за bash
Публикувано от: console в Mar 17, 2009, 11:48
Решенението е намерено

Код:
#!/bin/bash
./program &
pid=$(/sbin/pidof program )
sleep 180
kill $pid



Титла: Re: Помощ за bash
Публикувано от: Hapkoc в Mar 17, 2009, 13:44
Код:
#!/bin/bash

program &
sleep 180
kill $!