[unix] SCP 사용 오류 :“일반 파일 아님”
잠시 동안 검색했는데 일반 파일의 정의를 찾을 수 없습니다. 내 경로는 영구적이며 (에서 시작 /
)에 연결 중입니다.
scp root@IP: /path/to/picture.jpg
암호를 찾은 다음 …
scp: .: not a regular file
답변
일반 파일은 파이프 나 장치, 소켓, 문 등과 같이 이름이 지정된 디렉토리 나 “특별한”파일 이 아닌 파일입니다 . 심볼릭 링크 는 일반 파일이 아니지만 대상 파일처럼 작동합니다. 응용 프로그램이 파일의 내용에 액세스하고 있습니다.
root@IP:
사본의 출처와 /path/to/picture.jpg
목적지로 전달 했습니다 . 소스는 root
머신 에서 사용자의 홈 디렉토리 입니다 IP
. 이것은 목적지로는 유용하지만 소스로는 유용하지 않습니다. 입력 한 내용은 디렉토리를 파일로 복사하는 데 필요합니다. 옵션 scp
을 사용하여 재귀 적 사본을 요청하지 않으면 디렉토리를 복사 할 수 없습니다 -r
(및로도 기존 파일을 디렉토리로 덮어 쓰기를 거부 -r
하지만 소스가 일반 파일 인 경우 일반 파일을 자동으로 덮어 씁니다).
/path/to/picture.jpg
복사하려는 파일의 원격 시스템에있는 경로 인 경우 파일 이름을 호스트 스펙에 고정해야합니다. :
호스트 이름을 원격 경로와 구분하는 것은 콜론 입니다. 목적지도 지정해야합니다.
scp root@IP:/path/to/picture.jpg /some/destination
로컬 파일 /path/to/picture.jpg
을 원격 호스트 에 복사 하려면 인수를 교체해야합니다. 유닉스 복사 명령은 소스를 첫 번째로, 목적지를 마지막으로 둡니다.
scp /path/to/picture.jpg root@IP:
원격 파일 /path/to/picture.jpg
을 동일한 위치에 로컬로 복사 하려면 경로를 반복해야합니다. 쉘이 반복 작업을 수행하도록 할 수 있습니다 (타이핑이 적고 가독성이 떨어짐).
scp root@IP:/path/to/picture.jpg /path/to/picture.jpg
scp {root@IP:,}/path/to/picture.jpg
답변
디렉토리를 복사 할 때 다음 -r
옵션을 사용해야합니다 .
scp -r root@IP:/path/to/file /path/to/filedestination
답변
구문 문제-사이의 공백을 제거하십시오
root @ IP :
과
/통로
답변
scp root@IP:/path/to/file /path/to/filedestination
위의 명령은 파일을 원격 서버에서 컴퓨터로 복사합니다. 입력 scp root@IP:
만하면 루트의 홈 디렉토리 (scp users home .
) 를 복사하려고 시도합니다 .
따라서 파일의 정확한 경로를 제공해야합니다
답변
파일이 아닌 폴더를 복사하려고하므로 오류가 발생하므로 -r
옵션 을 사용하여 파일을 재귀 적으로 복사해야합니다.
원격 컴퓨터에서 로컬 컴퓨터로 파일을 복사 할 때 아래 명령을 사용하십시오.
scp -r root@RemoteIP:/path/to/file /path/to/filedestination
또는
로컬 컴퓨터에서 원격 컴퓨터로 파일을 복사하는 경우
scp -r /path/to/file root@RemoteIP:/path/to/filedestination
답변
scp root@IP:/path/to/*.jpg /path/to/filedestination/
이것은 작동합니다 (적어도 내 Mac에서는)