Executing Network Commands Through Java
Executing Network Commands Through Java
import java.util.*;
import java.io.*;
class CommandExec
{
public static void main(String args[])throws Exception
{
Scanner sc=new Scanner(System.in);
Runtime run =Runtime.getRuntime();
boolean val=true;
while(val)
{
System.out.print("Pratik_Roy_terminal => Enter Command: ");
String st = sc.nextLine();
if(st.equals("goodbye"))
break;
Process p= run.exec(st);
InputStreamReader is=new InputStreamReader(p.getInputStream());
BufferedReader input=new BufferedReader(is);
String result;
while((result=input.readLine())!=null)
System.out.println(result+"\n");
}
}
}
Output:
$ javac CommandExec.java
$ java CommandExec
Rakesh_Paul _terminal => Enter Command: ping -w 2 localhost
PING localhost (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost (127.0.0.1): icmp_req=1 ttl=64 time=0.012 ms
64 bytes from localhost (127.0.0.1): icmp_req=2 ttl=64 time=0.038 ms
64 bytes from localhost (127.0.0.1): icmp_req=3 ttl=64 time=0.036 ms
--- localhost ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1999ms
rtt min/avg/max/mdev = 0.012/0.028/0.038/0.013 ms
Rakesh_Paul_terminal => Enter Command: ifconfig
eth0 Link encap:Ethernet HWaddr ec:b1:d7:3b:ac:2f
inet addr:10.10.141.23 Bcast:10.10.141.255 Mask:255.255.255.0
inet6 addr: fe80::eeb1:d7ff:fe3b:ac2f/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:72369 errors:0 dropped:448 overruns:0 frame:0
TX packets:8718 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:22305566 (22.3 MB) TX bytes:982881 (982.8 KB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:723 errors:0 dropped:0 overruns:0 frame:0
TX packets:723 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:66126 (66.1 KB) TX bytes:66126 (66.1 KB)
Rakesh_Paul _terminal => Enter Command: goodbye
$
Tags:
Network
0 comments