いろんなサーバー設定研究所

インフラエンジニアに役立つ各種設定やTipsを提供します Windows Server、Linux など

*

PowershellでFTPサーバーに接続する手順

      2015/05/23

意外と需要のあるPower Shell でFTPに接続する方法。

Webclientクラスを利用すると、簡単にすっきりとスクリプトを作ることができます。


まずはファイルをクライアントからサーバーにアップロードするサンプルスクリプトです。

$user     = '<YOUR ACCOUNT>'
$password = '<YOUR PASSWORD>'
$url      = 'ftp://<FTPHOST NAME>/'

$wc = New-Object System.Net.WebClient
$wc.Credentials = New-Object System.Net.NetworkCredential($user,$password)
$wc.BaseAddress = $url

$wc.UploadFile("<FTPSV SIDE FILENAME>","<LOCAL SIDE FILENAME>")

$wc.Dispose()

FTPサーバーでユーザー認証を行っている前提のスクリプトです。匿名アクセスの場合6行目を削除してください。

UploadFileメソッドの左側にはサーバー側に保存する際のファイル名を指定し、右側にはクライアントに存在するファイルパスを記載します。

ファイルをダウンロードする場合は下記の通りです。

$user     = '<YOUR ACCOUNT>'
$password = '<YOUR PASSWORD>'
$url      = 'ftp://<FTPHOST NAME>/'

$wc = New-Object System.Net.WebClient
$wc.Credentials = New-Object System.Net.NetworkCredential($user,$password)
$wc.BaseAddress = $url

$wc.DownloadFile("<FTPSV SIDE FILENAME>","<LOCAL SIDE FILENAME>")

$wc.Dispose()

UploadFileメソッドをDownloadFileメソッドに書き換えただけです。とても簡単!!

以上、PowerShellでFTPサーバーに接続する手順でした。

 - Power Shell