powershellprintingftpintermec

Using PowerShell to FTP to label printer - mimic command-line FTP command


I'm trying to print files to an Intermec printer. I can do it with ftp command like:

put C:\myfile.prn pr1

Now I'm trying to do the same thing with PowerShell and I've been able to upload files but I'm not sure how execute the last part, which is the port of the printer pr1.

This is what I got so far.

$Dir = "C:\files"    
$ftp = "ftp://printerip/pr1/" 
$user = "admin" 
$pass = "pass"  

$webclient = New-Object System.Net.WebClient 

$webclient.Credentials = New-Object System.Net.NetworkCredential($user, $pass)  

#list every sql server trace file 
foreach($item in (dir $Dir "*.prn")) { 
    "Uploading $item..." 
    $uri = New-Object System.Uri($ftp+$item.Name) 
    $webclient.UploadFile($uri, $item.FullName) 
} 

Solution

  • You are uploading the local file myfile.prn to the remote "file" pr1.

    So do the same in PowerShell:

    $ftp = "ftp://printerip/pr1"
    $webclient.UploadFile($ftp, $item.FullName)