I think rsync over ssh passes the command to be run through ssh
directly, rather than feeding it to an interactive shell on the remote
side.
If you run a shell script, bash doesn't even source your .bashrc, so
no, programmable completion isn't even loaded when you run a non-
interactive shell.
Other than checking if it's running on a terminal (reading commands
from a terminal), I don't think there's any way for bash to know that an
rsync client is on the other end, rather than e.g. a gnome-terminal
window passing keystrokes. If you're doing something that feeds input
to bash through a terminal, it's going to have all its normal
interactive stuff enabled.
Please put
date >> /tmp/home.bashrc.log
in your ~/.bashrc or something, and give an example we can use as a test-case
where .bashrc is loaded but shouldn't be. Or some other kind of testcase to
demonstrate that bash-completion stuff is loading in a non-interactive shell.
** Changed in: bash-completion (Ubuntu)
Status: New => Invalid
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1040358
Title:
please make bash-completion do nothing in non-interactive shells
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/bash-completion/+bug/1040358/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs