다음을 사용하여 파일을 랩톱에 원격으로 복사했습니다.
scp someFile USER@192.168.178.32:/home/USER/put/it/some/where/oh/damn/you/here
탭을 눌러 원격 경로를 자동 완성 할 수 있기를 원합니다.
zsh
있습니다.
scp
또한 적어도 여기에서 작동합니다. ssh-agent에 이미 추가 된 ssh 키가 필요합니다.
다음을 사용하여 파일을 랩톱에 원격으로 복사했습니다.
scp someFile USER@192.168.178.32:/home/USER/put/it/some/where/oh/damn/you/here
탭을 눌러 원격 경로를 자동 완성 할 수 있기를 원합니다.
zsh
있습니다.
scp
또한 적어도 여기에서 작동합니다. ssh-agent에 이미 추가 된 ssh 키가 필요합니다.
답변:
멋진 자동 완성 기능을 설정했는지 확인하십시오. 많은 배포판에서 이것은 ~/.bashrc
포함해야 함을 의미 합니다 . /etc/bash_completion
.
비밀번호가없는 인증을 설정해야합니다 (예 : 이미로드 된 키 사용) ssh-agent
.
SSH 연결 설정 속도가 느리므로 연결을 한 번에 설정 한 후 그 연결을 사용하여 완료 속도를 상당히 높일 수 있습니다. 이를 수행하는 비교적 복잡한 방법은 ssh -N -M target-host
마스터 슬레이브 연결을 설정 한 후 마스터 SSH 연결을 여는 것 입니다 ~/.ssh/config
. 지시 사항 은 단일 명령에서 여러 ssh 세션을 참조하십시오 ( ControlMaster
및 ControlPath
옵션 필요 ).
간단한 방법은 SSHFS를 통해 원격 파일 시스템을 마운트하고 cp
일반적인 쉘 완료와 함께 사용 하는 것입니다.
mkdir ~/remote
sshfs USER@192.168.178.32:/home/USER ~/remote
cp -p someFile ~/remote/put/it/some/where/oh/damn/you/here
/etc/bash_completion
소스 가있는 것 같습니다 ~/.bash_completion
. 내가 쓸 수 없습니다 원격 서버에서이 기능을 할 수 있도록하려는하지 /etc/
않고있다 /etc/bash_completion
가 있지만 ( /etc/bash_completion.d/
. 내 홈 디렉토리에서 실행하는 것이 안전 할 것이다 버전이 있습니까? 적어도 하나의 참조가있다 ~ / .bash_completion이므로 누락 된 부분이 많고 순환 루프 또는 오류를 일으킬 수있는 다른 요소가있을 수 있습니다.
공개 키를 원격 컴퓨터에 추가하기 만하면됩니다.
cat ~/.ssh/id_rsa.pub | ssh USER@192.168.178.32 "cat - >> ~/.ssh/authorized_keys"
그리고 이제 scp
탭 완성.
ssh-copy-id
을위한 것이며 파일 권한을 처리합니다.
@Giles가 말했듯 이 자동 완성을 올바르게 설정했는지 확인하십시오. 시스템에 ssh 키가 있어야합니다.
이 구성을 추가 ~/.ssh/config
하면 속도가 크게 달라집니다.
Host *
ControlMaster auto
ControlPath ~/.ssh/master-socket/%r@%h:%p
ControlPersist 10s
각 호스트에 대한 마스터 연결이 생성됩니다.
10s 지속은 연결이 자동으로 닫히기 전에 디렉토리를 볼 수있는 시간을 제공합니다.
지속성이 없으면 연결을 다시 작성해야하며 탭 완성 속도가 느려집니다.
~$ scp mymachine:~/pa
탭
path/ palace/ pandas/ porn/
~$ scp mymachine:~/path/to
탭
~$ scp mymachine:~/path/to/file
탭
rsync
내 의견에 훨씬 우수하다,scp