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
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to