다음 명령을 사용하여 파일을 랩톱에 원격으로 복사합니다.
scp someFile [email protected]:/home/USER/put/it/some/where/oh/damn/you/here
탭을 클릭하여 원격 경로를 자동 완성할 수 있기를 원합니다.
답변1
멋진 자동 완성 기능이 켜져 있는지 확인하세요. 많은 배포판에서 이는 ~/.bashrc
.. /etc/bash_completion
를 사용하더라도 비밀번호 없는 인증을 설정해야 합니다 ssh-agent
.
SSH 연결 설정은 속도가 느리므로 연결을 한 번 설정하고 나중에 사용하면 훨씬 더 빠르게 완료할 수 있습니다. 비교적 복잡한 방법은 ssh -N -M target-host
마스터-슬레이브 연결을 설정한 후 마스터 SSH 연결을 여는 것 입니다 ~/.ssh/config
.단일 명령으로 여러 SSH 세션지침(귀하의 필요 사항 ControlMaster
및 ControlPath
옵션)을 얻으십시오.
쉬운 방법은 원격 파일 시스템을 다음 위치에 마운트하는 것입니다.SSHFScp
그리고 일반적인 쉘 완성과 함께 사용됩니다.
mkdir ~/remote
sshfs [email protected]:/home/USER ~/remote
cp -p someFile ~/remote/put/it/some/where/oh/damn/you/here
답변2
내가 해야 할 일은 내 공개 키를 원격 시스템에 추가하는 것뿐입니다.
cat ~/.ssh/id_rsa.pub | ssh [email protected] "cat - >> ~/.ssh/authorized_keys"
이제 표 작성이 scp
완료되었습니다.
답변3
@Giles 처럼설명하다, 자동 완성이 올바르게 설정되어 있고 컴퓨터에 SSH 키가 있는지 확인하세요.
이 구성을 추가하면 속도 가 ~/.ssh/config
크게 달라졌습니다 .
Host *
ControlMaster auto
ControlPath ~/.ssh/master-socket/%r@%h:%p
ControlPersist 10s
이렇게 하면 호스트당 마스터 연결이 생성됩니다.
10초 동안 연결이 자동으로 종료되기 전에 디렉터리를 볼 수 있는 시간이 제공됩니다.
지속성이 없으면 연결을 다시 만들어야 하므로 탭 완료 속도가 느려집니다.
예
~$ scp mymachine:~/pa
상표
path/ palace/ pandas/ porn/
~$ scp mymachine:~/path/to
상표
~$ scp mymachine:~/path/to/file
상표
답변4
scp를 사용하는 대신 lftp로 전환할 수 있습니다. 이는 여러분이 찾고 있는 자동 완성 기능(예: 와일드카드)을 포함하여 ftp, sftp 및 ssh를 통한 파일 전송을 위한 훌륭하고 일관된 인터페이스를 제공합니다.
lftpfish://user@machine
위에서 scp로 했던 것처럼 ssh를 통해 연결을 엽니다. 많은 컴퓨터에서는 sftp://도 지원하는데, 내 경험으로는 이것이 더 좋습니다.