Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Rename file on FTP with PowerShell

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.

while($true)
{
    $i++
    $File = "c:\live\temp.jpg"
    $ftp = "ftp://username:[email protected]/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 ?

Rename-Item ..\camera\temp.jpg live.jpg

Thanx!

like image 994
45RPM Avatar asked Aug 22 '12 10:08

45RPM


People also ask

How do I Rename a file using FTP?

Adding an FTP Rename File activity in the orchestrationCreate or open an orchestration. A graphical representation of the orchestration is displayed. Select the Activities tab and expand the FTP folder. Drag the Rename File activity onto the orchestration.

How do you Rename a file in PowerShell?

In Windows PowerShell, go to a file folder, enter dir | rename-item -NewName {$_.name -replace “My”,”Our”} and press Enter. Using Command Prompt, go to a file folder, enter ren *.

Can you FTP from PowerShell?

You are able to upload files to the FTP server using Powershell.


1 Answers

Try this:

$ftp = [System.Net.FtpWebRequest]::Create("ftp://username:[email protected]/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()
like image 142
Andrey Marchuk Avatar answered Sep 26 '22 09:09

Andrey Marchuk