質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

Q&A

4回答

27800閲覧

LinuxのシェルからWindowsにあるバッチを実行したい

kohei1210

総合スコア8

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

0グッド

0クリップ

投稿2016/09/02 09:07

###前提・実現したいこと
Linux上に作成したシェルから
Windowsにあるバッチを実行したい。

###発生している問題・エラーメッセージ
windowsにある「winrm」を使用すればLinuxから接続できると記載されているページを
見つけたのですが、具体的にどのようなコマンドを使用すればLinuxからwindowsに
接続できるのかが分からない状況です。

ご存知の方がいましたら、ご教授のほど宜しくお願い致します。

###補足情報(言語/FW/ツール等のバージョンなど)
Linuxサーバー:CENTOS 6
Windowsサーバー:windows server 2012
※windows側はwinrmの設定をしております。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

LinuxとWindowsがIPネットワークで接続されているという前提で
Windows server 2012 側でTelnet Serverを立てて動作させたいbatファイルを
Telnet Serverアクセスディレクトリにおきます。

LinuxのシェルからTelnetでWindows2012serverに接続するとWindowsの
コマンドプロンプトが出てくるのでここでそのbatファイルを実行すれば良いです。

但し、この方法はLinuxとWindowsがIPネットワークでコネクションが確立し
かつTelnetポート23が開いていないとできません。22番ポートのSSHでも
同様のことはできると思いますが・・・

投稿2016/09/02 10:21

Yatsurugi

総合スコア1628

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Linux側にWinRMのクライアントを入れないといけません。

Pythonのモジュールになるのですが、pywinrmというのが使えるようです。Microsoftの公式ブログでも紹介されていますので、たぶんうまく動くでしょう。使い方はpywinrmのREADMEにいくつかサンプルがあるので参考にしてください。

Pythonがよくわからないという場合は、WinRMというRubyのモジュールもあるようです。

どちらも、

  1. Windows側を設定しておく。
  2. モジュール(ライブラリ)を入れる。
  3. スクリプトを書く。(スクリプトの中に接続情報や実行したいPowerShellコマンド等を記載します)
  4. スクリプトを実行する。

と言う流れになると思います。得意な方の言語でチャレンジしてみてください。

投稿2016/09/02 11:14

raccy

総合スコア21733

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

使ったことはありませんが winexe なるものがあるそうです。
LinuxでコンソールからWindowsを操作しよう

このページで紹介されているのは、Windowsのcmd画面を表示するところまでですが、
がんばればご希望のことができそうな雰囲気があります。
// できなかったら申し訳ない。

投稿2016/09/02 11:34

takasima20

総合スコア7458

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Linux上に作成したシェルから

これは、Linxux のシェルスクリプトから自動的にという意味でしょうか?
そうであれば、Yatsurugi さんの回答に加えて expect で telnet に自動ログインしてWindows のバッチファイルを起動すれば良いと思います。

参考:expect. 対話的なコマンド(ssh, telnet, ftp, su等)を自動実行したいとき

投稿2016/09/02 11:00

mit0223

総合スコア3401

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問