[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: bash problem
From: |
Chet Ramey |
Subject: |
Re: bash problem |
Date: |
Fri, 3 Jan 2020 08:34:14 -0500 |
User-agent: |
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:68.0) Gecko/20100101 Thunderbird/68.3.1 |
On 1/2/20 8:45 AM, Wheatley, Martin R wrote:
> It appears that there may be an issue when bash terminates a shell as a
> result of TMOUT expiring.
>
> I was attempting to enter "dc_command show media | grep YD" to the shell and
> this is the terminal output...
>
> OLDuser@hostname $ dc_command show mediatimed out waiting for input:
> auto-logout
> NEWuser@hostname $ | grep YD
> -bash: syntax error near unexpected token `|'
I don't know what you have TMOUT set to, but it seems kind of small from
that example.
> If the command line had been something like " cd fred && rm -rf *"
> and the TMOUT had expired just after the '&&' had been entered then the
> "rm-rf *" would have been executed in the `cwd` of the parent process rather
> than in 'fred'
Yes. Since a child and its parent process share file descriptors (and file
pointers), terminal input not consumed by the child is available for the
parent.
>
> It looks like the TMOUT isn't re-started after any shell input but only after
> a '\n' is seen.
That's how it's documented: TMOUT is the number of seconds to wait for "a
line of input after issuing the primary prompt." It issues the prompt and
waits for a complete line of input. That way it can work whether or not
you're using readline.
--
``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/
- bash problem, Wheatley, Martin R, 2020/01/02
- Re: bash problem,
Chet Ramey <=