Question:
Is there a way to rename the file in a FTP directory?
I’m streaming live images from computer to FTP, but problem is that when it uploads the image to FTP it making instant replacement of a file. I want to firstly upload image with temporary name and then make a rename to live.jpg. It’s gonna be like cached file uploading.
1 2 3 4 5 6 7 8 9 10 11 12 |
while($true) { $i++ $File = "c:\live\temp.jpg" $ftp = "ftp://username:password@example.com/camera/temp.jpg" $webclient = New-Object System.Net.WebClient $uri = New-Object System.Uri($ftp) $webclient.UploadFile($uri, $File) } |
How can I use this in script properly ?
1 2 |
Rename-Item ..\camera\temp.jpg live.jpg |
Thanx!
Answer:
Try this:
1 2 3 4 5 6 7 8 |
$ftp = [System.Net.FtpWebRequest]::Create("ftp://username:password@example.com/camera/temp.jpg") $ftp.KeepAlive = $true $ftp.UsePassive = $true $ftp.Method = "Rename" $ftp.RenameTo = "camera/temp1.jpg" $ftp.UseBinary = $true $response = [System.Net.FtpWebResponse] $ftp.GetResponse() |