使用Java窗口程序执行输入的任何cmd命令

利用Java窗口程序来执行用输入的任何命令

实现效果:
Java桌面窗口,输入框、按钮,当输入框被输入命令的时候,点击按钮执行命令!

实现代码

package com.remote.remote.againNew;

import javax.swing.*;
import javax.swing.plaf.TextUI;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.beans.PropertyChangeListener;
import java.io.IOException;

/**
 * @Author nan
 * @Date  2019-11-25
 * ::::注意::::实例化按钮的顺序要按照从大到小
 **/


/*开始继承JFrame*/
public class RemoteCommandExec extends JFrame {


    /*实例化窗口主模板*/
    static JFrame jframe =  new RemoteCommandExec();
    /*实例化Jpanel*/
    static JPanel jpanel = new JPanel();
    /*按钮实例*/
    static JButton button = new JButton();
    /*输入框实例*/
    static JTextField textField = new JTextField();

    /**
     * 设置主窗体属性
     */
    public RemoteCommandExec(){
        /*设置标题*/
        setTitle("孤水寒月");
        /*设置窗口宽高*/
        setSize(650,500);
        /*设置窗口大小和位置*/
        setBounds(700,300,700,300);
        /*设置可以退出*/
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        //更改默认的icon图标
        ImageIcon icon=new ImageIcon("src/main/resources/img/starstar.jpg");
        setIconImage(icon.getImage());
        /*设置显示属性为可显示(用来控制主窗口是否显示)*/
        setVisible(true);
    }

    /*声明主函数*/
    public static void main(String args[]){
    <!--将Jpanel添加到Jfram里面-->
        jframe.add(jpanel);
        jpanel.add(button);

        //设置文本的输入长度
        textField.setColumns(30);
        //设置文本的水平对齐方式(居中)
        textField.setHorizontalAlignment(JTextField.CENTER);
        <!--将输入框添加到Japnel-->
        jpanel.add(textField);
        <!--设置按钮显示的文本-->
        button.setText("点我执行打开命令");

        //按钮单击事件监听
        button.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent e)
            {
                <!--按钮被单击的时候,获取输入框的值-->
                String text = textField.getText();
                <!--将获取到的值传递到执行函数里面-->
                comExec(text);
            }
        });

    }


    /**
     * 窗口化命令执行
     */
    public static void comExec(String com){
            try{
                <!--获取输入的命令并执行-->
                Process pro = Runtime.getRuntime().exec(com); //添加要进行的命令,"cmd  /c calc"中calc代表要执行打开计算器,如何设置关机请自己查找cmd命令
                /*cmd /c dir 是执行完dir命令后关闭命令窗口
                cmd /k dir 是执行完dir命令后不关闭命令窗口
                cmd /c start dir  会打开一个新窗口后执行dir命令,原窗口会关闭
                cmd /k start dir  会打开一个新窗口后执行dir命令,原窗口不会关闭*/
            }catch(IOException exception){
                System.out.println("命令执行异常是: "+exception);
            }
    }

}

窗口开启效果


窗口开启效果

命令执行效果

taskmgr是开启任务管理器的命令

命令执行效果

接下来会继续更新有关窗口命令执行部分的文章,配合exe4j,可以将Java程序打包成Windows可执行的exe程序,可以实现自己写的窗口程序在任何windows平台上运行。
有喜欢的小伙伴还多请多关注哟!

posted @ 2019-11-25 11:27  孤水寒月  阅读(1874)  评论(0编辑  收藏  举报