1 ./jobs2.sub: line 9: fg: job 1 started without job control
22 [4]- Running sleep 2 &
23 [5]+ Running ( sleep 2; exit 4 ) &
28 [1]- Running sleep 20 &
29 [3]+ Running sleep 20 &
31 ./jobs5.sub: line 40: wait: %8: no such job
35 [1]+ Running sleep 20 &
36 ./jobs7.sub: line 5: fg: no current jobs
37 [1]+ Running sleep 20 &
39 ./jobs.tests: line 40: wait: %1: no such job
40 ./jobs.tests: line 45: fg: no job control
43 ./jobs.tests: line 58: wait: `1-1': not a pid or valid job spec
44 ./jobs.tests: line 59: wait: `-4': not a pid or valid job spec
45 wait-for-background-pids
46 async list wait-for-background-pids
47 async list wait for child
53 ./jobs.tests: line 84: wait: %2: no such job
55 async list wait-for-job
66 ./jobs.tests: line 111: fg: %2: no such job
67 ./jobs.tests: line 112: bg: job 1 already in background
69 ./jobs.tests: line 119: fg: -s: invalid option
70 fg: usage: fg [job_spec]
71 ./jobs.tests: line 120: bg: -s: invalid option
72 bg: usage: bg [job_spec ...]
73 ./jobs.tests: line 125: disown: -s: invalid option
74 disown: usage: disown [-h] [-ar] [jobspec ... | pid ...]
75 ./jobs.tests: line 129: disown: %1: no such job
76 ./jobs.tests: line 132: disown: %2: no such job
78 ./jobs.tests: line 135: wait: pid 1 is not a child of this shell
80 3 -- 1 2 3 -- 1 - 2 - 3
81 [1] Running sleep 300 &
82 [2]- Running sleep 350 &
83 [3]+ Running sleep 400 &
85 [1] Running sleep 300 &
86 [2]- Running sleep 350 &
87 [3]+ Running sleep 400 &
88 ./jobs.tests: line 152: kill: %4: no such job
89 ./jobs.tests: line 154: jobs: %4: no such job
91 [3]+ Running sleep 400 &
93 [2]- Running sleep 350 &
96 [1] Running sleep 300 &
97 [3]- Running sleep 400 &
99 [2]+ Stopped sleep 350
101 [2]+ Stopped sleep 350
102 [3]- Running sleep 400 &
104 [3]- Running sleep 400 &
106 [2]+ Stopped sleep 350
109 [2]+ Running sleep 350 &
110 [3]- Running sleep 400 &
112 after kill -STOP, backgrounding %3:
116 after KILL -STOP, foregrounding %1