Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.debian.user > #244654
| From | David Wright <deblis@lionunicorn.co.uk> |
|---|---|
| Newsgroups | linux.debian.user |
| Subject | PS1 and $-, a footnote; was Re: .profile not being src'd at login on uptodate buster |
| Date | 2022-01-27 06:00 +0100 |
| Message-ID | <DK533-2ZT-1@gated-at.bofh.it> (permalink) |
| References | (2 earlier) <C2rsS-8g4-5@gated-at.bofh.it> <C2J6q-2mz-7@gated-at.bofh.it> <C2Jzr-2vU-3@gated-at.bofh.it> <C36w2-8T-3@gated-at.bofh.it> <C36FH-e6-1@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Mon 12 Apr 2021 at 11:26:49 (-0400), Greg Wooledge wrote: > On Mon, Apr 12, 2021 at 10:18:19AM -0500, David Wright wrote: > > I'm not using PS1 to test whether stdout is a terminal, but whether > > the file is running interactively. From man bash: > > > > "PS1 is set and $- includes i if bash is interactive, allowing a > > shell script or a startup file to test this state. > > The second half of that sentence is referring to the $- part. That's > what you're supposed to test to see whether the shell is interactive. > > # bash > if [[ $- = *i* ]]; then > echo "I am an interactive shell" > echo > > # sh > case $- in > *i*) echo "I am an interactive shell" ;; > esac I happened to come across one place where I might have originally found the construction I no longer use, and that's in man lesspipe, very near the end, where it says: if [ -z "$PS1" ]; then Cheers, David.
Back to linux.debian.user | Previous | Next — Next in thread | Find similar | Unroll thread
PS1 and $-, a footnote; was Re: .profile not being src'd at login on uptodate buster David Wright <deblis@lionunicorn.co.uk> - 2022-01-27 06:00 +0100 Re: PS1 and $-, a footnote; was Re: .profile not being src'd at login on uptodate buster Greg Wooledge <greg@wooledge.org> - 2022-01-27 13:40 +0100
csiph-web