java代码运行shell命令的方法分享

打印 上一主题 下一主题

主题 663|帖子 663|积分 1989

转自:
http://www.java265.com/JavaCourse/202204/2913.html
Shell命令:
Shell俗称壳(用来区别于核),是指“为使用者提供操作界面”的软件(command interpreter,命令解析器)。它类似于DOS下的COMMAND.COM和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。
shell分两大类:
一:图形界面shell
(Graphical User Interface shell 即 GUI shell)
例如:应用最为广泛的Windows Explorer(微软的Windows系列操作系统),还有也包括广为人知的Linux shell,其中Linux shell包括X Window Manager(BlackBox和FluxBox),以及功能更强大的CDE、GNOME、KDE、 Xfce。
二:命令行式shell
(Command Line Interface shell ,即CLI shell)
例如:
sh(Bourne Shell)/csh/tcsh/bash/ksh/zsh/fish等(Unix及类unix)
COMMAND.COM(CP/M系统;MS-DOS、PC-DOS、DR-DOS、FreeDOS等DOS;Windows 9x)
cmd.exe/命令提示符(OS/2、Windows NT、React OS)
Windows PowerShell(支持.NET Framework技术的Windows NT)
GCOS Command Language (GCL)(Honeywell GCOS) [6]
MULTICS Command Language(MULTICS) [4]  [9]
DIGITAL Command Language(DCL)(OpenVMS [7-8]  [11]  )
RDOS/DOS Command Line Interpreter [5]  [10]
传统意义上的shell指的是命令行式的shell,以后如果不特别注明,shell是指命令行式的shell。
文字操作系统与外部最主要的接口就叫做shell。shell是操作系统最外面的一层。shell管理你与操作系统之间的交互:等待你输入,向操作系统解释你的输入,并且处理各种各样的操作系统的输出结果。
shell提供了你与操作系统之间通讯的方式。这种通讯可以以交互方式(从键盘输入,并且可以立即得到响应),或者以shell script(非交互)方式执行。shell script是放在文件中的一串shell和操作系统命令,它们可以被重复使用。本质上,shell script是命令行命令简单的组合到一个文件里面。
Shell基本上是一个命令解释器,类似于DOS下的COMMAND.COM。它接收用户输入的命令(如ls等),然后调用相应的应用程序。较为通用的shell有标准的Bourne shell和C Shell。
 
下文笔者讲述使用java代码运行linux命令的方法分享,如下所示:
  1. 实现思路:
  2.      使用Runtime.getRuntime()中的exec()方法即可运行指定的shell命令
复制代码
例:
  1. Runtime run = Runtime.getRuntime();
  2. Process process = run.exec(new String[]{"/bin/sh","-c", cmd});
  3. InputStream in = process.getInputStream();
  4. BufferedReader bs =new BufferedReader(new InputStreamReader(in));
  5. StringBuffer sf =new StringBuffer();
  6. String result =null;
  7. while ((result = bs.readLine()) !=null) {
  8.   sf.append(result);
  9.   sf.append("\n");
  10. }
  11. process.destroy();<br><br>
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用多少眼泪才能让你相信

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表