다음을 사용하여 파일을 랩톱에 원격으로 복사했습니다.
scp someFile USER@192.168.178.32:/home/USER/put/it/some/where/oh/damn/you/here
탭을 눌러 원격 경로를 자동 완성 할 수 있기를 원합니다.
답변
멋진 자동 완성 기능을 설정했는지 확인하십시오. 많은 배포판에서 이것은 ~/.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
답변
공개 키를 원격 컴퓨터에 추가하기 만하면됩니다.
cat ~/.ssh/id_rsa.pub | ssh USER@192.168.178.32 "cat - >> ~/.ssh/authorized_keys"
그리고 이제 scp
탭 완성.
답변
scp를 사용하는 대신 lftp로 전환 할 수 있습니다. 그것은 당신이 찾고있는 자동 완성 등을 포함하여 ftp, sftp 및 ssh를 통한 파일 전송을위한 훌륭한 일관된 인터페이스를 제공합니다 (예 : 와일드 카드).
lftp fish : // user @ machine
scp로 위와 같이 ssh를 통해 연결을 엽니 다. 많은 컴퓨터가 sftp : //도 지원하므로 내 경험이 훨씬 좋습니다.
답변
@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
탭