SSH 연결을 통한 SCP 반전


17

랩톱에있을 때 일부 서버의 파일이 필요한 경우가 종종 있습니다. 하지만 그 파일이 어디 있는지 모르는 경우, I가이 ssh서버에, 주위, 볼 exit, 다음 scp server:file .. 정적 IP가있는 데스크톱 및 서버로 작업하는 경우 파일을 반대로 SCP ( scp desktop:~ file) 만 할 수 있지만 랩톱에서는이 작업을 수행 할 수 없습니다. SSH 연결을 통해 파일을 SCP로 되돌릴 수있는 좋은 방법이 있습니까? SSH로 연결 한 컴퓨터가 클라이언트로 파일을 뒤로 보냅니다.


왜 mDNS를 사용하지 않습니까?
Ignacio Vazquez-Abrams

1
나는이 질문에 이미 정답이 있다고 생각합니다 : unix.stackexchange.com/a/2869
shellster

답변:


20

SFTP는 SCP보다 더 복잡한 파일 작업을 지원하는 SSH의 확장 인 SFTP를 사용하면 훨씬 쉽습니다. 거의 모든 최신 유닉스 및 리눅스 배포판이이를 지원합니다. 사용하려면이 명령을 실행하여 서버에 연결하십시오.

sftp server

그런 다음 lscd명령을 사용하여 찾고있는 파일을 탐색하고 찾을 수 있습니다. 찾았 으면 get명령을 사용하여 다운로드하십시오. 예를 들어, file.txt서버의 현재 작업 디렉토리에서 로컬 시스템의 현재 작업 디렉토리 로 다운로드 하려면 다음을 실행하십시오.

get file.txt

/home/pavpanchekha/textfiles/file.txt서버에서 ~/textfiles/로컬 컴퓨터 로 다운로드하려면 대신 다음을 실행하십시오.

get /home/pavpanchekha/textfiles/file.txt ~/textfiles/

반대로이 방법으로 파일을 업로드 할 수도 있습니다. file.txt로컬 현재 작업 디렉토리에서 서버의 현재 작업 디렉토리로 업로드하려면 다음을 입력하십시오.

put file.txt

다음과 같이 각각에 대한 전체 경로를 사용할 수도 있습니다 get.

put ~/textfiles/file.txt /home/pavpanchekha/textfiles/file.txt

사용 가능한 SFTP 명령의 전체 목록을 보려면 프롬프트 help에서 실행 하십시오 sftp>.


1
고마워요. 이미 SSH 연결 상태 인 경우 반대로 시작하는 방법이 있습니까? 그렇지 않으면 파일을 전송하고 SSH 연결을 종료하고 SFTP 연결을 만들고 종료하고 SSH로 돌아가고 싶다는 것을 깨달았습니다.
pavpanchekha

2
@pav : SSH_CLIENT환경 변수에는 다른 정보 중에서 연결 호스트의 IP 주소가 포함됩니다. 이를 사용하여 쉘 별명을 작성하여 원래 호스트로 쉽게 SFTP 할 수 있습니다. 이 줄을 ~/.bashrc서버에 추가하기 만하면됩니다 . alias sftpback="sftp $(echo $SSH_CLIENT | awk '{print $1}')" 그런 다음 SSH에서 연결을 끊었다가 다시 연결하여 변경 사항을 적용하거나 명령처럼 실행하여 즉시 적용하십시오. 거기서부터는 sftpback클라이언트에 관계없이 SFTP를 실행 중인 클라이언트로 다시 실행할 수 있습니다 .
패치

이것이 최고입니다 !!! NANO (온라인 파일 편집)에서 저를 저장해 주셔서 감사합니다.
Mohsin

0

콘솔 파일 관리자 Midnight Commander (mc)에는 원격 서버에 대한 SFTP 연결 / 파일 관리를 허용하는 VFS 시스템이 있습니다. Windows의 Cygwin 에서도 실행됩니다 . 기본 인터페이스는 두 개의 독립적 인 패널을 보여줍니다. SFTP 원격 디렉토리를 그 중 하나에서 열고 다른 패널과 파일을 쉽게주고받을 수 있습니다. 구문 강조와 함께 파일 편집기 / 뷰어 (mcedit)를 포함합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.