나는 사용하고있다퍼티Windows 7에서 SSH를 통해 학교 컴퓨터실에 연결합니다. SSH를 사용하여 Windows 컴퓨터에서 학교 컴퓨터의 사용자에게 파일을 전송할 수 있습니까?
답변1
Putty 다운로드 페이지에서 PSCP 도구를 사용하십시오.
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
PSCP는 ssh 명령을 통해 cp(복사)를 수행하는 scp의 퍼티 버전입니다.
PSCP는 Windows 컴퓨터에 설치해야 합니다(다운로드만 하면 실제로 설치 프로세스가 없습니다. "패키징 파일" 섹션에 pscp.exe가 이미 포함되어 있습니다). 학교 서버에는 아무것도 설치할 필요가 없습니다. PSCP와 scp는 모두 SSH를 사용하여 연결합니다.
댓글의 사용법 질문에 답변하려면:
컴퓨터에서 원격 서버로 업로드하려면:
c:\pscp c:\some\path\to\a\file.txt user@remote:\home\user\some\path
그러면 file.txt 파일이 서버의 지정된 디렉터리에 업로드됩니다. 대상 경로의 마지막 부분이 디렉터리가 아닌 경우 새 파일 이름이 됩니다. 다음과 같이 다른 이름의 파일을 업로드할 수도 있습니다.
c:\pscp c:\some\path\to\a\file.txt user@remote:\home\user\some\path\newname.txt
원격 서버에서 컴퓨터로 파일을 다운로드하려면:
c:\pscp user@remote:\home\user\some\file.txt c:\some\path\to\a\
또는
c:\pscp user@remote:\home\user\some\file.txt c:\some\path\to\a\newfile.txt
또는
c:\pscp user@remote:\home\user\some\file.txt .
끝에 점이 하나 있습니다. 그러면 지정된 파일이 현재 디렉터리에 다운로드됩니다.
이것은 주석에서 지금까지 언급되었으므로 관심이 있는 경우 WinSCP가 이 모든 것에 대한 GUI를 제공한다는 점도 지적해야 합니다.http://winscp.net/eng/download.php
답변2
Windows PowerShell을 사용할 수 있습니다(실제로 모든 UNIX 운영 체제에서도 작동하는 OpenSSH 명령입니다).
scp -P <non-default target ssh port> "<source file>" <username>@<hostname/address>:<destination path>
-P
SSH가 기본 포트(22)에 열려 있는 경우 플래그를 생략할 수 있습니다.
원격 호스트에서 파일을 복사하기 위해 로컬 및 원격 경로의 위치를 전환합니다.
예를 들어:
- SSH를 통해 "ps.key" 파일을 복사합니다.
- 로컬 운영 체제는 Windows 10입니다.
- 원격 주소는 192.168.88.242이고 ssh(데몬)는 포트 1688에서 작동 중입니다.
- 원격 사용자 이름은 "nick"입니다.
주문하다:
로컬(win) -> 원격(unix):
scp -P 1688 "D:\MEGA\ps.key" [email protected]:/home/nick/ps.key
원격->로컬(원격 호스트에서 복사됨):
scp -P 1688 [email protected]:/home/nick/ps.key "D:\MEGA\ps.key"
그런 다음 대상 키 지문을 확인하고(이전에 PowerShell을 통해 호스트에 연결한 적이 없는 경우) 원격 호스트에서 자신을 인증해야 합니다(ssh-agent를 사용하지 않는 경우 사용자 비밀번호 또는 ssh-key 비밀번호 입력).
OpenSSH가 내장되어 있으므로 설치 없이 win10에서 작동합니다.
답변3
LINUX/UNIX 서버와 통신하려면 슬래시(/)를 사용해야 할 수도 있습니다.
c:\pscp c:\some\path\to\a\file.txt user@remote:/home/user/some/path
답변4
다음 명령을 사용하여 많은 수의 파일을 그룹화할 수 있습니다 tar
.
tar -cz . | ssh me@school -- 'tar -C/path/to/target/dir -xz'
...이것은 로컬 시스템의 현재 디렉터리에 있는 모든 파일을 대상 경로로 재귀적으로 압축하고 스트리밍하는 동시에 원격 시스템의 스트림을 압축 해제하고 확장합니다.
표준 출력에 작성된 모든 항목으로 비슷한 작업을 수행할 수 있습니다. cat
분명한 선택입니다.
cat ./localfile | ssh user@remote 'cat >./remotefile'