Whenever I want to copy a file from my home directory, I run into the same issue: scp (using openssh-client 1:5.9p1-5ubuntu1, GNU bash, version 4.2.24(1)-release (x86_64-pc-linux-gnu)) won't autocomplete paths preceded by ~ (tilde). This is very simple to verify by typing scp ~/ and pressing Tab twice - No file completions are shown. Even if I specify a unique path prefix such as scp ~/.bash_hist it won't complete. Is this by design, configurable, or a bug?
To clarify, all other parts of the completion work: Host names and paths on remote hosts both complete just fine. Completions of paths with tilde also work with other commands, such as ls.
Could there be some restriction on completing a non-standard ~? Mine points to /home/users/username and is an NFS 3 mount to another host (/home/username is used for speed-critical things like the browser profile). I have not changed $HOME (/home/users/username) or some other craziness.
scp ~/followed by two tabs expands~/by$HOMEand show me all valid candidates for autocompletion. I usebashversion 4.1.5. Probably you have a custom completion enabled forscpso~isn't examined by your shell anylonger. – user1146332 Sep 6 '12 at 12:16