2016-07-15 14 views
3

私はMirth Connect command line interface(mccommand.exe)を呼び出すためにpowershell 4を使用しています。 Mirthシェルの代わりに動的コマンドを渡したいので、Mirthスクリプトファイルを渡すために、Mirth CLIの "-s"パラメータの使用を明示的に避けています。Powershellスクリプトを使用してMirth Connect CLIを呼び出す

対話型PowerShellコンソールからmccommand.exeを起動すると、Mirth Connectサーバーに接続でき、Mirth Shellが開き、1つまたは複数のMirth Shellコマンドを実行してMirth Channelsを管理できます。

例:

. "C:\Program Files (x86)\Mirth Connect\mccommand.exe" -a "https://localhost:8443" -u admin_user -p admin_password 
Connected to Mirth Connect server @ https://localhost:8443 (3.4.1.8057) 
$ 

私にはWindows PowerShell ISEを経由してPowerShellスクリプト内から同じコマンドを実行すると、私は同じ「マースConnectサーバーに接続https://localhost:8443 @(3.4.1.8057)」というメッセージが表示されますが、スクリプトは待っていて、Mirth ShellコマンドをMirthに渡すことができる "$"コマンドプロンプトが表示されることはありません。

Powershellスクリプトを使用してMirthシェルにコマンドをルーティングする方法についてのご意見はありますか?

+0

わからないこれは私がそれをテストすることはできませんから、場合に役立ちますしかし、ドット演算子(別の目的を持っている)の代わりに、呼び出し演算子( '&')を使いたいかもしれません。 –

答えて

2

したがって、すべてのmirthシェルコマンドをテキストファイルとして渡す必要があります。 これは、私がどのチャンネルをインポートしても展開するために使用するものです。 テキストファイルは、以下のようなコマンドのセットを持っている必要があり

Set-Location 'C:\Mirth Connect' 
$ChannelOutput=.\mccommand.exe -a https://localhost:38443 -u username -p password -s "C:\commands.txt" 

If($ChannelOutput -like '*successfully*') 
{ 
"Channel created successfully and deplyed" 
} 
else 
{ 
$_.Exception.Message 
} 

は、以下のコードを実行します

Commands.txt: 
import "C:\TestServiceChannel1.xml" Force 
channel deploy "Channel_name" 
関連する問題