0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

WinScpをバッチで自動化

Last updated at Posted at 2022-06-20

本記事で出来るようになること

LinuxサーバからWinScpを使用して、ファイルの移動ができるようになる

  1. バッチファイルでWinScpを起動する
  2. 処理を記載したテキストファイルを読み込み実行する

環境

VMwareでLinuxサーバを立てています。

  • Windows 10
  • WinScp
  • Linuxサーバ(CentOS7)

以下のことが実行できるバッチファイルを作成する。
Windows10内にバッチファイルを作成する。
作成したバッチファイルを実行すると、Linuxサーバから特定のファイルをWindows10の特定のフォルダに移動する。

バッチファイル作成

WinScp.bat
@echo off

:: WinSCP.comのパス
"C:\<パス>\WinSCP\WinSCP.com" /script=.\WinScp_content.txt

pause

WinScp.batと同じ階層に以下WinScp_content.txtを作成してください。

WinScp_content.txt
# Linuxサーバに接続をする
open ユーザ名:パスワード@xx.xx.xx.xx
# 例:open root:PassW0rd@192.168.0.1

# バイナリ転送モード
option transfer binary

# 確認メッセージの無視
option confirm off

# Linuxサーバ → Windows(フォルダでも可)
get /<Linuxサーバのパス>/ファイル名 "C:\<Windowsのパス>\"

# Windows → Linuxサーバ(フォルダでも可)
put "C:\<Windowsのパス>\ファイル名" /<Linuxサーバのパス>/ファイル名

# Linuxサーバ のファイル削除
rm /<Linuxサーバのパス>/ファイル名

# 日付
echo %TIMESTAMP#yyyymmdd%

# コネクション 切断
close

# ログアウト
exit

その他操作

コマンド 操作側 説明
cd Linuxサーバ ディレクトリ移動
chmod Linuxサーバ ファイル権限変更
cp Linuxサーバ ファイル複製
ls Linuxサーバ ディレクトリ内表示
mkdir Linuxサーバ ディレクトリ作成
mv Linuxサーバ ファイルを移動・名前変更
pwd Linuxサーバ ディレクトリ表示
rmdir Linuxサーバ ディレクトリ削除
echo メッセージ表示
lcd Windows ディレクトリ移動
lls Windows ディレクトリ内表示
lpwd Windows ディレクトリ表示
synchronize LinuxサーバとWindows ディレクトリ同期

まとめ

Linuxサーバ → WinScp → Windowsを実現させるには2つのファイルが必要です。

  • バッチファイル(.bat) = WinScpを起動
  • テキストファイル(.txt) = WinScpで実行する内容

+α

  • コマンドプロンプトを表示させないで実行する方法

0
2
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
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?