Através do conceito de chamada de execução Shell pelo Java (comando
Runtime.exec("nome do comando"); ) construí um aplicativo com uma
interface grafica para rodar comandos em Dos e Shell através do Java.
Segue o código que deve ser exportado num arquivo jar executável.
import javax.swing.*;
import java.awt.event.*;
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class CordaoUmbilical extends JFrame implements ActionListener {
/**
* @since 27/09/2011
*/
private static final long serialVersionUID = -4400536034133334969L;
JButton b1;
JFrame frame;
JPanel panel;
JTextArea textArea;
JTextField textField;
JScrollPane spane;
public static void main(String[] args) {
CordaoUmbilical v = new CordaoUmbilical();
}
public CordaoUmbilical() {
b1 = new JButton("Comando");
b1.setMnemonic(KeyEvent.VK_A);
b1.setActionCommand("Run");
b1.addActionListener(this);
b1.setToolTipText("Click neste botão para " + "executar o comando");
frame = new JFrame("Janela de Comando");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panel = new JPanel();
textArea = new JTextArea(30, 60);
spane = new JScrollPane(textArea);
spane.getHorizontalScrollBar();
spane.getVerticalScrollBar();
textField = new JTextField(10);
panel.add(textField);
panel.add(b1);
panel.add(spane);
frame.add(panel);
frame.setSize(800, 600);
frame.setVisible(true);
}
public void actionPerformed(ActionEvent e) {
String entrada = textField.getText();
try {
Process p = Runtime.getRuntime().exec(entrada);
StringBuffer str = new StringBuffer();
BufferedReader in = new BufferedReader(new InputStreamReader(
p.getInputStream()));
String line;
while ((line = in.readLine()) != null) {
str.append(line + "\n");
}
textArea.append(str.toString() + " ");
textField.selectAll();
} catch (Exception e2) {
for (StackTraceElement iterable_element : e2.getStackTrace()) {
textArea.append(iterable_element.toString() + "\n");
}
JOptionPane.showMessageDialog(null, "Digite um comando válido!",
"Erro de execução", JOptionPane.ERROR_MESSAGE);
}
}
}
Nenhum comentário:
Postar um comentário