利用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平台上运行。

有喜欢的小伙伴还多请多关注哟!

使用Java窗口程序执行输入的任何cmd命令的更多相关文章

  1. windows开机自动执行bat脚本启动cmd命令窗口并执行命令,最后自动关闭cmd命令窗

    先说bat脚本吧,随便在桌面建一个文本文档,在里面写脚本,内容是,先启动cmd命令窗,并执行一个命令,最后自动关闭cmd窗,如下: ---------------------------------- ...

  2. Js使用WScript.Shell对象执行.bat文件和cmd命令

    Js使用WScript.Shell对象执行.bat文件和cmd命令 http://www.jb51.net/article/58669.htm WScript.Shell(Windows Script ...

  3. Javascript中使用WScript.Shell对象执行.bat文件和cmd命令

    WScript.Shell(Windows Script Host Runtime Library)是一个对象,对应的文件是C:/WINDOWS/system32/wshom.ocx,Wscript. ...

  4. 【转】Javascript中使用WScript.Shell对象执行.bat文件和cmd命令

    WScript.Shell(Windows Script Host Runtime Library)是一个对象,对应的文件是C:/WINDOWS/system32/wshom.ocx,Wscript. ...

  5. JAVA窗口程序实例一

    package 甲; import java.awt.Dimension; import java.text.SimpleDateFormat; import java.util.Calendar; ...

  6. Java的程序执行过程与编译原理

    百度云:https://pan.baidu.com/s/16FVPI8PSqk5O8qufljCNHg 提取码:a2vr 一,文字步骤 1.编写源代码 2.进入cmd 3.输入javac将文件编译转换 ...

  7. java窗口程序初学组件小总结

    容器(可以放组件)JPanel默认的布局管理器是FlowLayout:JPanel panel=new JPanel(); 按钮JButton(可以为汉字 也可以是图片):JButton button ...

  8. java窗口程序字符串时间转成时间戳

    pom.xml 文件: ?xml version="1.0" encoding="UTF-8"?> <project xmlns="htt ...

  9. xshell多窗口同时执行输入命令

随机推荐

  1. 面试必问的Synchronized知道这些就可以了

    Synchronized关键字算是Java的元老级锁了,一开始它撑起了Java的同步任务,其用法简单粗暴容易上手.但是有些与它相关的知识点还是需要我们开发者去深入掌握的.比如,我们都知道通过Synch ...

  2. Java学习笔记五--String(二)String其他方法

    第一节课 // 清除单位字符串开始和结尾空白的副本 String.trim(); 字符串每次更改都会创建新的对象,而不会覆盖原来的字符串,每次拼接都会产生新的String对象,耗时耗内存. java. ...

  3. Graylog源码分析

    上文主要介绍了Graylog的功能与架构,本篇我们来看看Graylog的源码 一. 项目启动(CmdLineTool) 启动基本做了这几件事:初始化logger,插件加载(这里用到了Java SPI机 ...

  4. 数据结构(四十)平衡二叉树(AVL树)

    一.平衡二叉树的定义 平衡二叉树(Self-Balancing Binary Search Tree或Height-Balanced Binary Search Tree),是一种二叉排序树,其中每一 ...

  5. mysql实现海量数据的存储、访问的解决方案

    mysql实现海量数据的存储.访问的解决方案: mysql数据库水平切分的实现原理可分为以下几个:分库,分表,主从,集群,负载均衡器等 第1章 引言 随着互联网应用的广泛普及,海量数据的存储和访问成为 ...

  6. AB实验的高端玩法系列3 - AB组不随机?观测试验?Propensity Score

    背景 都说随机是AB实验的核心,为什么随机这么重要呢?有人说因为随机所以AB组整体不存在差异,这样才能准确估计实验效果(ATE) \[ ATE = E(Y_t(1) - Y_c(0)) \] 那究竟随 ...

  7. 初学android小笔记(一)

    一:应用外观基础设置 (1)去掉标题栏:打开Android Manifest文件,将theme如下设置 (2)改应用图标:将icon指定图片改为想要的app图标即可 (3)改应用名字: 在Manife ...

  8. $POJ2942\ Knights\ of\ the\ Round\ Table$ 图论

    正解:图论 解题报告: 传送门! 一道,综合性比较强的题(我是萌新刚学$OI$我只是想练下$tarjan$,,,$QAQ$ 考虑先建个补图,然后现在就变成只有相互连边的点不能做邻居.所以如果有$K$个 ...

  9. CSPS模拟 45 乔迁之喜

    搬家了qwq 暑假在机房藏的吃的还没来得及吃qwq 有缘人会发现它的(其实并没有) 我居然也能和skyh并列了啊sto T1 安排打怪 不可能让左边的人越过右边人打的怪去打更靠右的怪吧? $O(n^2 ...

  10. vue中组件的data为什么是一个函数

    1. 前言 在学习vue的时候,一直纳闷一件事:组件的data数据为什么必须要以函数返回的形式,为什么不是简单的对象形式呢?遂带着问题去翻官方文档,文档中自然也写明了这么做的原因,本篇博文以官方文档给 ...