1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PowerShell Script(ps1)でWinScpを自動実行する

Last updated at Posted at 2024-10-25

下記がPowerShellのスクリプトからWinScpを操作するスクリプトの例

transfer.sh
# バッチモードに設定し、確認/問い合わせを無効にする
option batch on
# ファイル上書きの確認などを無効にする
option confirm off

# 除外設定
option exclude "*.log;*.tmp"

# サーバーに接続
open username:password@host
# なおパスワードを指定して接続するには次のようにする
# open user:password@example.com

# リモートディレクトリを変更
cd /home/user/workspace
# バイナリモードに変更
option transfer binary
# ファイルをd:\にダウンロード(最後の\が省けません)
# -preservetime : タイムスタンプ変更なし
put -preservetime C:\Users\user\workspace\powershell\share\* ./
# 切断
close

## 異なるユーザーでサーバーに接続
#open user2@example.com
## リモートディレクトリを変更
#cd /home/user2
## ファイルをアップロード
#put d:\examplefile.txt 
## 切断
#close
## 終了
exit
TransferFile.ps1
# WinScpのパス
$winScpPath = "C:\Users\user\tools\WinSCP-6.3.5-Portable\WinSCP.com"
# WinScp.exeの方を実行するなら\consoleオプションが必要
# $winScpPath = "C:\Users\user\tools\WinSCP-6.3.5-Portable\WinSCP.exe /console"

# スクリプトファイル
$winScpScriptPath = ".\transfer.sh"

# WinScp実行
& $winScpPath /script=$winScpScriptPath
receive.sh
# バッチモードに設定し、確認/問い合わせを無効にする
option batch on
# ファイル上書きの確認などを無効にする
option confirm off

# 除外設定
option exclude "*.log;*.tmp"

# サーバーに接続
open username:password@host
# なおパスワードを指定して接続するには次のようにする
# open user:password@example.com

# リモートディレクトリを変更
cd /home/user/workspace
# バイナリモードに変更
option transfer binary
# ファイルをd:\にダウンロード(最後の\が省けません)
# -preservetime : タイムスタンプ変更なし
get -preservetime ./* C:\Users\user\workspace\powershell\share\
# 切断
close

## 異なるユーザーでサーバーに接続
#open user2@example.com
## リモートディレクトリを変更
#cd /home/user2
## ファイルをアップロード
#put d:\examplefile.txt 
## 切断
#close
## 終了
exit
ReceiveFile.ps1
# WinScpのパス
$winScpPath = "C:\Users\user\tools\WinSCP-6.3.5-Portable\WinSCP.com"
# WinScp.exeの方を実行するなら\consoleオプションが必要
# $winScpPath = "C:\Users\user\tools\WinSCP-6.3.5-Portable\WinSCP.exe /console"

# スクリプトファイル
$winScpScriptPath = ".\receive.sh"

# WinScp実行
& $winScpPath /script=$winScpScriptPath

参考

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?