[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
5.3-alpha: the `jobs' builtin prints foreground dead jobs with function
From: |
Koichi Murase |
Subject: |
5.3-alpha: the `jobs' builtin prints foreground dead jobs with function substitutions |
Date: |
Sun, 28 Apr 2024 06:15:22 +0900 |
I'm currently testing my framework with 5.3-alpha. In 5.3-alpha and
the devel branch, foreground dead jobs are reported by the `jobs'
builtin with function substitutions:
$ bash-5.3-alpha --norc
$ a=${ (true) }; b=${ jobs; }; declare -p b
declare -- b="[1] Done ( true )"
I expect the jobs builtin to exclude the foreground dead jobs in the
above command. This doesn't happen with slightly different versions
like
$ a=${ (true) }; b=${ (jobs); }; declare -p b
$ (true); b=${ jobs; }; declare -p b
$ a=${ (true) }; b=$(jobs); declare -p b
$ a=${ (true) }; jobs
$ a=${ (true) }; (jobs)
I would like to get the list of the background dead jobs using the
`jobs' builtin, but this behavior contaminates it with the foreground
ones as far as I use the function substitutions. If the current
behavior would be the intended one, I would request an option of the
`jobs' builtin that excludes the foreground dead jobs.
--
Koichi