2017-01-09 1 views
0

저는 현재 데스크탑 컴퓨터에서 다른 컴퓨터로 특정 폴더를 정기적으로 (매시간마다) 복사하는 기능을 (가급적이면 powershell에서) 구현하려고합니다.powershell을 사용하여 전체 폴더를 특정 IP 주소로 복사하는 방법은 무엇입니까?

다른 컴퓨터가 로컬 네트워크에 없지만 필요한 사용자 이름과 암호가있는 사용자의 자격 증명과 IP가 있습니다.

지금까지 robocopy를 사용해 보았지만 제대로 작동시키는 방법을 찾지 못했습니다.

중요한 경우 : 내 데스크톱 컴퓨터는 Windows 10을 실행하고 다른 컴퓨터는 Raspbian에서 실행되는 나무 딸기 파이입니다.

이미 성공적으로 시도한 예제 코드가 있습니까?

+2

? FTP로 업로드하는 코드는 SMB 공유로 복사하는 것과 다릅니다 ... –

답변

2

robocopy 인증을 처리하지 않습니다. 원격 (SMB) 공유에 액세스하기위한 자격 증명을 제공해야하는 경우 robocopy과 함께 사용하기 전에 드라이브 문자에 매핑해야합니다. 귀하의 RasPi가 Samba를 실행 중이라고 가정합니다.

net use X: \\192.168.23.42\share /user:username password 
robocopy C:\some\folder X:\ /s 
net use X: /d 

위의 코드는 PowerShell과 CMD에서 실행됩니다.

또한 New-PSDrive를 통해 네트워크 드라이브를 매핑 할 수 있지만, 조금 더 많은 코드가 필요합니다

$pw = ConvertTo-SecureString -String 'password' -AsPlainText -Force 
$cred = New-Object Management.Automation.PSCredential ('username', $pw) 
New-PSDrive -Name X -PSProvider FileSystem -Root '\\192.168.23.42\share' -Credential $cred -Persist | Out-Null 
robocopy C:\some\folder X:\ /s 
Remove-PSDrive -Name X 

을 자격 증명이 SMB를위한 있지만 WinSCP .Net assembly를 사용할 수 SSH 액세스하지 않은 경우.

+0

매우 유망 해 보입니다! 내가 할 수있는 한 빨리 시도해 보겠다. – Sossenbinder

1

일반적으로 라스베리에서 ssh를 사용하는 경우 WinScp을 사용할 수 있습니다. WinScp는 많은 커맨드 라인 옵션과 스크립트를 제공하여 WinScp website을 확인합니다. 당신은 당신의 자신의 WinSCP에 복사 스크립트를 만들고 통해 그것을 시작할 수 있습니다

winscp.com /script=script.txt

희망을.

enter link description here

당신이 사본을 사용하고자하는 어떤 프로토콜
관련 문제