bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Should $(fg) resume a stopped job?


From: Oğuz
Subject: Re: Should $(fg) resume a stopped job?
Date: Fri, 31 Jul 2020 19:43:14 +0300

31 Temmuz 2020 Cuma tarihinde Chet Ramey <chet.ramey@case.edu> yazdı:

> On 7/31/20 2:03 AM, Oğuz wrote:
> >     $ sleep 25
> >     ^Z
> >     [1]+  Stopped                 sleep 25
> >     $
> >     $ echo $(fg; jobs %)
> >     bash: jobs: %: no such job
> >     sleep 25
> >     $
> >     $ jobs
> >     [1]+  Running                 sleep 25 &
> >
> > What I gather from this is that bash fakes interactive job control in
> > command substitution context, because otherwise `fg' wouldn't return
> > immediately. But I don't see any point in that `fg' resumes the stopped
> job
> > when it's faked. Is this a bug or a deliberate choice?
>
> Maybe a minor bug, but certainly a choice. The command substitution keeps
> the jobs list around, since the subshell is supposed to be an exact copy of
> the parent, and it's useful to get the output of `jobs' out of command
> substitution.
>
> You just can't expect to do anything with any of those jobs, since the
> command substitution shell is not the parent of any of them. It would
> make sense to have `fg' complain about that.
>
>
Right, it would. bosh behaves the same way as bash btw.


> --
> ``The lyf so short, the craft so long to lerne.'' - Chaucer
>                  ``Ars longa, vita brevis'' - Hippocrates
> Chet Ramey, UTech, CWRU    chet@case.edu    http://tiswww.cwru.edu/~chet/
>


-- 
Oğuz


reply via email to

[Prev in Thread] Current Thread [Next in Thread]