社区
Java SE
帖子详情
关于java执行sh文件的问题
liuzuowei007
2011-09-16 02:26:29
我现在的做法是将所有命令写入shell文件
大概有700个命令
然后用java执行shell文件的时候
执行了400条之后就卡住不动了
请问这是什么问题呢。。
这个sh文件在命令行直接执行就没问题
卡住不动的那条直接在命令行执行也没问题
问问各位大大 这其中涉及到什么执行超时的概念吗
小弟在这感谢各位了
...全文
767
14
打赏
收藏
关于java执行sh文件的问题
我现在的做法是将所有命令写入shell文件 大概有700个命令 然后用java执行shell文件的时候 执行了400条之后就卡住不动了 请问这是什么问题呢。。 这个sh文件在命令行直接执行就没问题 卡住不动的那条直接在命令行执行也没问题 问问各位大大 这其中涉及到什么执行超时的概念吗 小弟在这感谢各位了
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
liuzuowei007
2012-03-02
打赏
举报
回复
[Quote=引用 13 楼 aluo412 的回复:]
大哥们,这个问题是怎么解决的,我也遇到了类似的问题。
[/Quote]
最后还是决定不执行那么多了
设置一个定时shell不断扫描一个文件 如果文件里是0就不执行
如果是1就执行之前的文件
java程序写文件 将文件里的0改成1 执行完再将文件置为0
aluo412
2012-02-23
打赏
举报
回复
大哥们,这个问题是怎么解决的,我也遇到了类似的问题。
liuzuowei007
2011-09-16
打赏
举报
回复
[Quote=引用 9 楼 shuwei003 的回复:]
类 Process
创建进程的方法可能无法针对某些本机平台上的特定进程很好地工作,比如,本机窗口进程,守护进程,Microsoft Windows 上的 Win16/DOS 进程,或者 shell 脚本。创建的子进程没有自己的终端或控制台。它的所有标准 io(即 stdin、stdout 和 stderr)操作都将通过三个流 (getOutputStream()、getInputStream()……
[/Quote]
[Quote=引用 10 楼 jc8futao 的回复:]
输出流没有flush被塞满了?这个可能性比较大
[/Quote]
我加了下面的代码,还是不行
OutputStream ps = p.getOutputStream();
ps.flush();
liuzuowei007
2011-09-16
打赏
举报
回复
[Quote=引用 9 楼 shuwei003 的回复:]
类 Process
创建进程的方法可能无法针对某些本机平台上的特定进程很好地工作,比如,本机窗口进程,守护进程,Microsoft Windows 上的 Win16/DOS 进程,或者 shell 脚本。创建的子进程没有自己的终端或控制台。它的所有标准 io(即 stdin、stdout 和 stderr)操作都将通过三个流 (getOutputStream()、getInputStream()……
[/Quote]
我试试
jc8futao
2011-09-16
打赏
举报
回复
输出流没有flush被塞满了?这个可能性比较大
shuwei003
2011-09-16
打赏
举报
回复
类 Process
创建进程的方法可能无法针对某些本机平台上的特定进程很好地工作,比如,本机窗口进程,守护进程,Microsoft Windows 上的 Win16/DOS 进程,或者 shell 脚本。创建的子进程没有自己的终端或控制台。它的所有标准 io(即 stdin、stdout 和 stderr)操作都将通过三个流 (getOutputStream()、getInputStream() 和 getErrorStream()) 重定向到父进程。父进程使用这些流来提供到子进程的输入和获得从子进程的输出。因为有些本机平台仅针对标准输入和输出流提供有限的缓冲区大小,如果读写子进程的输出流或输入流迅速出现失败,则可能导致子进程阻塞,甚至产生死锁。
不知道是否和这个有关
liuzuowei007
2011-09-16
打赏
举报
回复
[Quote=引用 7 楼 hxysjm520 的回复:]
那就是一起执行的问题了,内存耗光了?
[/Quote]
对啊 所以我问问一起执行的时候涉及什么超时的事么
内存肯定没耗光啊 我每次执行都到那卡住。。。
我要崩溃了。。。
hxysjm520
2011-09-16
打赏
举报
回复
那就是一起执行的问题了,内存耗光了?
liuzuowei007
2011-09-16
打赏
举报
回复
[Quote=引用 5 楼 shuwei003 的回复:]
那说明不是shell命令的问题,试试获取这个Process的错误流,看看报什么错误。
[/Quote]
打印过了。。没有错。。
都是命令执行完的控制台打印信息。。
这条命令跟其他能正常执行的命令完全一样 也完全没问题
可是一起执行的时候执行到这就卡着不动了
shuwei003
2011-09-16
打赏
举报
回复
那说明不是shell命令的问题,试试获取这个Process的错误流,看看报什么错误。
liuzuowei007
2011-09-16
打赏
举报
回复
[Quote=引用 3 楼 shuwei003 的回复:]
是不是环境变量不同呢?建议你试验下shell文件里只写那个有问题的shell,然后用java执行下试试。
[/Quote]
试了。。没问题。。
shuwei003
2011-09-16
打赏
举报
回复
是不是环境变量不同呢?建议你试验下shell文件里只写那个有问题的shell,然后用java执行下试试。
liuzuowei007
2011-09-16
打赏
举报
回复
[Quote=引用 1 楼 yangting_lisa 的回复:]
估计是遇到耗时的操作了。。。
[/Quote]
就是文件里要执行的命令有点多
这个耗时的操作系统会在一段时间后停止它的执行吗?
小笨熊
2011-09-16
打赏
举报
回复
估计是遇到耗时的操作了。。。
java
执行
linux的
SH
文件
NULL 博文链接:https://137459045.iteye.com/blog/1355214
基于
java
的web爬虫工具-可以爬取web网站信息-源码
1. 使用源码方式,直接运行 src/main/
java
/test/TestListPageUseAPI.
java
2. 使用发行包,在 dist 目录
执行
bootstrap.bat/
sh
, 注意里面的命令参数,最后一个是xml
文件
名,如果报
文件
找不到,就自己改成已有的配置...
Kafka 消息队列 (KRaft模式)
- 使用 kafka-metadata-
sh
ell.
sh
分析集群元数据4. Broker配置补充 - 补充 listeners、advertised.listeners 等配置 - 使用 kafka-metadata-
sh
ell.
sh
验证配置修改 - 配置支持...
dots-remake:游戏点的重制
点改造这是游戏的重制版,使用用
Java
编写。如何编译这些说明假设您在 Linux 机器上并安装了 JDK。... 确保所有 *.
sh
文件
都是可
执行
的$ chmod 755 *.
sh
运行 ./compile.
sh
运行 ./run.
sh
玩得开心!
java
进入
sh
文件
_
Java
代码来
执行
.
sh
文件
要在Windows上
执行
.
sh
脚本,必须安装合适的命令解释程序。 例如,你可以在你的Windows... 如果在Linux环境下通过
Java
执行
脚本时遇到
问题
,我宁愿在该环境中调试该
问题
。请记住,您可以在调试模式下在Linux上启动Jav...
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章