Java代码中执行Linux命令,亲测可用
前提需要知道怎么在linux怎么新建java文件和怎么编译,否则请先学其他知识!!
import java.io.*;
public class Test{
public static void main(String[] args) throws Exception{
try{
Process process=Runtime.getRuntime().exec("ls ./");
InputStreamReader reader = new InputStreamReader(process.getInputStream());
LineNumberReader line = new LineNumberReader(reader);
String str;
while((str=line.readLine())!=null){
System.out.println(str);
}
}catch (Exception e){
e.printStackTrace();
}
System.out.println("done !!!");
}
}
2、可是有时候会用到特殊的linux命令的时候就有问题了,比如最近在写一个发送邮件的功能,通过linux下面的sendmail来发送邮件的时候,用上面的方法就不行了
下面是使用linux发送邮件的命令全部步骤:
一、通过文件内容发送邮件
首先创建一个body.txt
|
1
|
[root@vps478753 ~]# touch body.txt |
写入内容
|
1
|
[root@vps478753 ~]# echo 'This is test mail'>body.txt |
发送邮件
|
1
|
[root@vps478753 ~]# mail -s 'Test mail' mail@lizhong.me < body.txt |
不一会就收到邮件了

点击打开,正文内容就是body.txt的内容
This is test mail
二、使用管道符【 | 】直接发送邮件内容
如果不想通过文件发送邮件内容也可以这么发送
|
1
|
[root@vps478753 ~]# echo "This is test mail" | mail -s 'Test mail' mail@lizhong.me |
以上效果同文件发送邮件内容一样
如果提示mail: command not found
|
1
2
|
[root@vps478753 ~]# mail -s 'Test mail' mail@lizhong.me < body.txt -bash: mail: command not found |
那么就是没有安装mail命令,此时需要安装mail命令
|
1
|
[root@vps478753 ~]# yum install mailx -y |
然后再重新发送以下邮件就好了!
-----以上内容纯属复制,原文地址:http://zdm2008.blog.163.com/blog/static/2049154520139795219380/
如果linux中有用到管道符的话需要这样写:

Java代码中执行Linux命令,亲测可用的更多相关文章
- 在Jenkins远程链接Linux系统,然后执行shell命令-亲测可用【转】
版权声明:本文为博主原创文章,未经博主允许不得转载.部分为转载其他人的,如要使用,也请提前通知一声 https://blog.csdn.net/a136332462/article/details/7 ...
- java servlet中执行linux命令
public HttpServletResponse execCmd(String cmd, HttpServletRequest request, HttpServletResponse respo ...
- java代码中执行liunx命令
public static String runShell(String command){ try{ String[] commands = isLinux()?new String[]{" ...
- Comet4J推技术在SSHE三大框架中应用-linux下亲测可用
Comet4J(Comet for Java)是一个纯粹基于AJAX(XMLHTTPRequest)的服务器推送框架,消息以JSON方式传递,具备长轮询.长连接.自动选择三种工作模式. 下载地址 co ...
- 在java代码中执行js脚本,实现计算出字符串“(1+2)*(1+3)”的结果
今天在公司项目中,发现一个计算运费的妙招.由于运费规则各种各样,因此写一个公式存到数据库.下次需要计算运费时,直接取出这个公式,把公式的未知变量给替换掉,然后计算出结果就是ok了. 一 ...
- PHP 代码内执行Linux命令
还是那个问题,就是那个php填写pdf表单,因为副武器的原因,改用命令执行了,哎,一个问题好多知识点啊,先来说说PHP执行linux命令,其实挺简单的,但是呢,后面说说我遇到的问题 1.PHP执行命令 ...
- mybatis自动生成代码插件mybatis-generator使用流程(亲测可用)
mybatis-generator是一款在使用mybatis框架时,自动生成model,dao和mapper的工具,很大程度上减少了业务开发人员的手动编码时间 坐着在idea上用maven构建spri ...
- 如何在java程序中调用linux命令或者shell脚本
转自:http://blog.sina.com.cn/s/blog_6433391301019bpn.html 在java程序中如何调用linux的命令?如何调用shell脚本呢? 这里不得不提到ja ...
- 写一段java程序来执行linux命令
摘要 在日常开发中,程序员需要经常查询服务器日志来排查问题和调试程序.如果是本地调试还好,但项目一旦发布到服务器上,每次查日志就很麻烦,而且日志量巨大,有时我们无法找到我们需要的信息.经常需要借助第三 ...
随机推荐
- css margin居中的问题
1.要在外壳套上一个父div加上100%宽度,在子div加上宽度和margin:auto; 2.子div的宽度通常是子div中元素的宽度,比如子div中一个宽度为169px的input.想居中的话,就 ...
- sonarqube 安装配置
http:// www.sonarqube.org MySQL Unsupported mysql version: 5.5. Minimal supported version is 5.6. Th ...
- 用wget下载文件
wget使用文档:https://www.gnu.org/software/wget/manual/wget.html 最开始常用的比如: wget -O /e/movie.mp4 http://w ...
- PHP 错误与异常 笔记与总结(8)自定义错误处理函数 set_error_handler()
通过 Set_error_handler() 函数设置用户自定义的错误处理函数. 步骤: ① 创建错误处理函数 ② 设置不同级别调用函数 ③ Set_error_handler() 函数制定接管错误处 ...
- web-content和web-info目录问题
1.资源文件只能放在WebContent下面,如 CSS,JS,image等.放在WEB-INF下引用不了. 2.页面放在WEB-INF目录下面,这样可以限制访问,提高安全性.如JSP,html 3. ...
- JQUERY 一些技巧在实际中的应用
在jquery选择器中.继续做判断$("tr[rel!=" + id + "]").find('.status').html('--'); $("tr ...
- Linux提示no crontab for root的解决办法
Linux提示no crontab for root的解决办法 安装crontab:yum install crontabs 说明:/sbin/service crond start //启动服务/s ...
- 【Xamarin笔记】Events, Protocols and Delegates
Events, Protocols and Delegates 事件.协议和委托 This article presents the key iOS technologies used to re ...
- heapsort
Introduction to Algorithms Third Edition The (binary) heap data structure is an array object that we ...
- 【转】Unity3D研究院之通过C#使用Advanced CSharp Messenger(五十)
http://www.xuanyusong.com/archives/2165 Advanced CSharp Messenger 属于C#事件的一种. 维基百科中由详细的说明http://wiki. ...