別のマシンにある.cmd
ファイルを実行する必要があります。このコードは出力を印刷することになった別のマシンでbatファイルを実行して出力を取得する
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
public class GetResponseMain {
//This is Example that display how to get response using java
public static void main(String args[])
{
String filePath = "\\\\255.255.255.0\\Scripts\\ClearCache.cmd";
try {
Process p = Runtime.getRuntime().exec(filePath);
p.waitFor();
InputStream in = p.getInputStream();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int c = -1;
while((c = in.read()) != -1)
{
baos.write(c);
}
String response = new String(baos.toByteArray());
System.out.println("Response: "+response);
} catch (Exception e) {
e.printStackTrace();
}
}
}
:私が持っているコードから提示された\\IP\Location\File.cmd
:私は次のようにそのマシンのファイルシステムにアクセスすることができます。しかし、それは.cmd
ファイルの内容を示しています。
私はそのマシンでスクリプトを実行するのではなく、そのスクリプトを実行すると思います。ローカルで実行しています。 どうすれば修正できますか?
バッチファイルの世界では、通常MicrosoftのPSEXECユーティリティを使用してリモートコンピュータでコードを実行します。 – Squashman
@Squashman少し説明していただけますか? – Nivedita
私はjavaについて何も知らないので、javaで動作させる方法を説明することができません。私は、リモートコンピュータ上でバッチファイルを実行する必要がある場合、psexecを使用することを知っています。 https://technet.microsoft.com/en-us/sysinternals/pxexec.aspx – Squashman