2005-09-20 21:31:55 +08:00
|
|
|
#
|
|
|
|
# Load common ssh options
|
|
|
|
#
|
|
|
|
|
2006-02-15 10:22:28 +08:00
|
|
|
__fish_complete_ssh scp
|
2005-09-20 21:31:55 +08:00
|
|
|
|
|
|
|
#
|
|
|
|
# scp specific completions
|
|
|
|
#
|
|
|
|
|
|
|
|
complete -c scp -d Hostname -a "
|
|
|
|
|
|
|
|
(
|
|
|
|
#Find a suitable hostname from the knownhosts files
|
|
|
|
cat ~/.ssh/known_hosts{,2} ^/dev/null|cut -d ' ' -f 1| cut -d , -f 1
|
|
|
|
):
|
|
|
|
|
|
|
|
(
|
|
|
|
#Prepend any username specified in the completion to the hostname
|
2005-12-19 06:51:50 +08:00
|
|
|
echo (commandline -ct)|sed -ne 's/\(.*@\).*/\1/p'
|
2005-09-20 21:31:55 +08:00
|
|
|
)(
|
|
|
|
cat ~/.ssh/known_hosts{,2} ^/dev/null|cut -d ' ' -f 1| cut -d , -f 1
|
|
|
|
):
|
|
|
|
|
2012-12-07 11:55:23 +08:00
|
|
|
(__fish_print_users)@\tUsername
|
2005-09-20 21:31:55 +08:00
|
|
|
|
|
|
|
"
|
2012-07-12 08:20:58 +08:00
|
|
|
|
|
|
|
#
|
|
|
|
# Remote path
|
|
|
|
#
|
|
|
|
complete -c scp -d "Remote Path" -n "echo (commandline -ct)|sgrep -o '.*:';and true" -a "
|
|
|
|
|
|
|
|
(
|
|
|
|
#Prepend any user@host information supplied before the remote completion
|
|
|
|
echo (commandline -ct)|sgrep -o '.*:'
|
|
|
|
)(
|
|
|
|
#Get the list of remote files from the specified ssh server
|
|
|
|
ssh -o \"BatchMode yes\" (echo (commandline -ct)|sed -ne 's/\(.*\):.*/\1/p') ls\ -d\ (echo (commandline -ct)|sed -ne 's/.*://p')\*
|
|
|
|
)
|
|
|
|
|
|
|
|
"
|
|
|
|
|
2007-01-16 09:18:28 +08:00
|
|
|
complete -c scp -s B --description "Batch mode"
|
|
|
|
complete -c scp -s l -x --description "Bandwidth limit"
|
|
|
|
complete -c scp -s P -x --description "Port"
|
|
|
|
complete -c scp -s p --description "Preserves modification times, access times, and modes from the original file"
|
|
|
|
complete -c scp -s q --description "Do not display progress bar"
|
|
|
|
complete -c scp -s r --description "Recursively copy"
|
|
|
|
complete -c scp -s S --description "Encyption program"
|
2005-09-20 21:31:55 +08:00
|
|
|
|