2016-08-02 21 views
0

私はMatlabを使って簡単なPowershellスクリプトを実行しようとしています。その目的は、私のラップトップとHPCの間でファイルを交換することです。コマンドラインからすべて正常に動作し、ファイルがコピーされ、プロセス全体が数秒で終了することがわかります。MatlabからPowershellを実行しています。 Matlabは停止しません

powershell.exe -ExecutionPolicy Unrestricted -File C:\Users\...\TEST.ps1 

しかし、私は、私はまだ正常にコピーされたファイルを見ることができますが、MATLABからで実行しようとすると、Matlabのdoesntのは、「停止」、それは永遠に忙しく意味と私はCtrlキーを押しながらCを通してそれをシャットダウンする必要があります。

大きなMatlabコードの一部であると思われるので、スムーズに作業したいと思います。誰か助けてくれますか?

A.

+1

ファイルをコピーしている間、またはコピーが終了してもビジー状態になるのだろうか? –

+1

ファイルがコピーされた後、Ctrl-Cでファイルを削除するまで。これが問題です。私はそれがプロセスが実行されている間、忙しいことを理解するが、Matlabは永遠に忙しい。 – Agnieszka

+0

私はまだこの問題に悩まされていますが、Powershellスクリプトが正常に実行された後(すべてのファイルがコピーされた後)、Enterを押すだけでMatlabに移行できます。私はそれがより大きいコードの一部になりたいので、それでも私の問題は解決しません。 – Agnieszka

答えて

0

解決策が見つかりました。それは私が望んでいた方法とまったく同じですおそらく最も単純なものではないが、私が何か良いものが見つかるまでそれを使うだろう。

f1name = tempname; 
    while exist(f1name,'file') 
    f1name = tempname; 
    end 
    fid = fopen(f1name, 'wt'); 
    [a,b]=system(['powershell.exe -ExecutionPolicy Unrestricted -File C:\Users\...\TEST.ps1 < ' f1name]); 
関連する問題