← Back to team overview

sslug-teknik team mailing list archive

Re: fg i script

 

Atte André Jensen wrote:

Hejsa

Jeg vil gerne gøre følgende

#!/bin/bash
program_a &
sleep 1
program_b
fg

Men jeg får at vide at
/home/atte/bin/script: line 5: fg: no job control

Hvordan får jeg program_a i forgrunden igen?

Man kan vel eksperimentere med "screen"
Dether script ser ud til at gøre det du beskriver (men output er ikke lige til at omdirigere):
=======
#!/bin/sh

screen -d -m cnt 10 A
sleep 1
cnt 5 B
screen -r
=======

Hvor "cnt 10 A" er et testprogram som skriver "1 A", "2 A" osv med en sekunds pause mellem hver.
Udputtet er sådan:

$ ./tst
B 1
B 2
B 3
B 4
B 5
[alle med 1 sekunds mellemrum]
[skærm blanker]
[De 5 første af de næste linier kommer uden pause, resten med 1 sekund imellem]
A 1
A 2
A 3
A 4
A 5
A 6
A 7
A 8
A 9
A 10
[skærm skifter tilbage til "B-linierne"]
[screen is terminating]

Efter kørsel står dette på skærm:
$ ./tst
B 1
B 2
B 3
B 4
B 5
[screen is terminating]
$


Personlig kan jeg ikke lige se hvad det skal kunne bruges til, men måske kan du lirke videre på det?

- Ole