Am 27.08.2020 um 18:49 schrieb rifter via Cygwin:
On 8/27/20, Morten Kjærulff via Cygwin <cygwin@cygwin.com> wrote:
On Tue, Aug 25, 2020 at 3:00 PM Brian Inglis wrote:
On 2020-08-25 01:15, Morten Kjærulff via Cygwin wrote:
On Mon, Aug 24, 2020 at 10:41 PM Brian Inglis wrote:
On 2020-08-24 06:36, Morten Kjærulff via Cygwin wrote:
On Mon, Aug 24, 2020 at 11:52 AM Thomas Wolff wrote:
Am 24.08.2020 um 10:05 schrieb Morten Kjærulff via Cygwin:
I have a script that starts several tmux panes with my favorite
commands.
In some (*some* and only *sometimes*) of the panes I see:

-bash: /home/xxxxxP/.git-completion.bash: No such file or directory
-bash: /home/xxxxxP/.git-prompt.sh: No such file or directory

My .bashrc has:

$ grep git .bashrc
. ~/.git-completion.bash
. ~/.git-prompt.sh

My userid is xxxxxf (and not xxxxxP).

Is this known?
What if you trace `echo $HOME; echo ~` after the `.`? I have
occasional
cases where $HOME and ~ start to be different in my shell, which is
quite weird and should not happen according to bash documentation.
Ok,

My userid is xx00mkf.


If I add:

. ~/.git-completion.bash
if [ ! $? = 0 ] ; then
   echo "HOME=" $HOME
   echo "~=" ~
fi

I see:

-bash: /home/xx00m/.git-completion.bash: No such file or directory
HOME= /home/xx00mkf
~= /home/xx00m


If I add:

. ~/.git-completion.bash
if [ ! $? = 0 ] ; then
   echo "HOME=" $HOME
   echo "~=" ~
   echo "~/.git-completion.bash=" ~/.git-completion.bash
fi

-bash: /home/xx00m/.git-completion.bash: No such file or directory
HOME= /home/xx00mkf
~= /home/xx00mkf
~/.git-completion.bash= /home/xx00mkf/.git-completion.bash
HOME dir depends on entries in:

         /etc/nsswitch.conf

whether you have /etc/passwd and/or /etc/group files and their entries;

your SAM and/or AD entry contents including e.g.

         $ net user $USER | grep '^Comment'
         Comment         <cygwin home="/home/..." group="Users"...>

You can check if any of these are in effect by running:

         $ getent passwd $USER

If you think they are relevant, you might also want to try to trace and
debug
your bash-completion setup scripts:

         $ set -vx
         $ . /etc/profile.d/bash_completion.sh |& tee
/tmp/completion.log | less

to see what they are doing that might affect other settings.
Thanks, but ~ changes from xx01m to xx01mkf (which is correct) between
a few commands in .bashrc:

If I add:

. ~/.git-completion.bash
if [ ! $? = 0 ] ; then
   echo "HOME=" $HOME
   echo "~=" ~
   echo "~/.git-completion.bash=" ~/.git-completion.bash
fi

I see (*sometimes*):

-bash: /home/xx00m/.git-completion.bash: No such file or directory
<<<wrong
HOME= /home/xx00mkf
~= /home/xx00mkf <<<correct
~/.git-completion.bash= /home/xx00mkf/.git-completion.bash <<<correct
Well then you have to trace and debug those commands run from your .bashrc
where
~ changes, perhaps using bashdb?
I really don't know how I can debug this?

With this:

. ~/.git-completion.bash

~ is *sometimes* expanded wrongly:

With this:

while [ ! ~ = $HOME ] ; do
   echo "$0: !!! ~ =! \$HOME" >&2
done
. ~/.git-completion.bash

I *sometimes* see an endless loop.

With this:

while [ ! ~ = $HOME ] ; do
   echo "$0: !!! ~ =! \$HOME" ~ $HOME >&2
done
. ~/.git-completion.bash

I see no error.

I have a script that I run under mintty. The script starts tmux, with
some panes. I see the error *sometimes* in *some* panes (not the same
every time).

/Morten
--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

I've had funky results from time  to time on  ~ expansion in cygwin
bash. usually it works fine. But sometimes one of the terminal windows
gets into a state where ~ becomes something that isn't all that
intelligible and breaks scripts. I forget if starting a new terminal
fixes it - usually I just quit using ~ until I end up rebooting. Never
really tracked it down.
It's sufficient to start a new bash (exec bash) to recover. I have the effect that sometimes (rarely) ~ flips to become /home/$USER on one system where $HOME is configured to be somewhere else. I once tried to track it down in bash source, without success so far. Yet I suspect it's a bash bug.
Thomas
--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to