bat命令行 运行程序 自动输入

valid25f 2013-09-11 09:19:02
在cmd中运行一个程序要求用户输入后回车 有没有办法在bat批处理文件中自动替用户输入呢
...全文
3002 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
anod 2013-09-11
  • 打赏
  • 举报
回复
这个似乎不用在这儿问。。。。。去linux那儿看看
bayougeng 2013-09-11
  • 打赏
  • 举报
回复
其实就是做个文件输入的重定向
bayougeng 2013-09-11
  • 打赏
  • 举报
回复
你只需要做个文件,把要输入的内容一行一行的写进去就行,java class像下面这样:
import java.io.BufferedReader;
import java.io.InputStreamReader;


public class Test {
	public static void main(String[] args) throws Exception {
		BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
		String in = null;
		while((in = reader.readLine()) != null){
			System.out.println(in);
		}
	}
}
bat文件像这样:

@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
SETLOCAL ENABLEEXTENSIONS

set BIN_DIR=%~dp0

SET CLASSPATH=!BIN_DIR!

echo java -classpath %CLASSPATH% Test < jars.lst
java -classpath %CLASSPATH% Test < jars.lst

:end
jars.lst就是你的输入文件,如果你在c盘下执行bat,那么Test.class和jars.lst都要放在c盘下
valid25f 2013-09-11
  • 打赏
  • 举报
回复
引用 1 楼 ysh512 的回复:
进 程通信?
public static void main(String[] args) { Scanner s=new Scanner(System.in); String name = s.next(); System.out.println("Hello"+name); } 就比如把这一段程序做成exe, 在hel.bat中写 hello.exe 运行bat文件 会要用户输入 一个名字 我想在bat里写一行代替用户输入 exe是别人的 我改不了
ysh512 2013-09-11
  • 打赏
  • 举报
回复
进 程通信?

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧