Linux = 是否有类似“Java Shell”的东西可以代替其他 Linux Shell?

Linux = 是否有类似“Java Shell”的东西可以代替其他 Linux Shell?

我最了解的编程语言是 Java。目前我必须编写大量“shell 脚本”来自动化我的服务器。是否有类似“Java Shell”的东西,以便我可以用 Java 编写 shell 脚本?

答案1

您可以获得 groovy 并使用 groovysh。我用它做过一些事情,但我发现 perl 或 bash/sh 最适合执行管理脚本。当您只需要执行操作系统命令和搜索文本时,像 Java 这样的应用程序语言会增加很多开销。

答案2

没有真正的要求“shell 脚本”必须用 shell 语言编写,如果您愿意,您可以使用 C 甚至汇编语言完成所有操作。

在 shell 脚本的上下文中,shell 只不过是一种编程语言的解释器,就像 Perl 或 PHP 一样,但针对您主要使用 shell 脚本执行的工作类型进行了大量优化。

从长远来看,我建议你学习 bash 之类的东西,这并不难,因为 shell 的能力非常有限,所以没有太多东西需要学习。

答案3

一些较轻的 jvm 语言有 shell,但这些是解释器的前端,而不是系统管理的自定义方言。一个好的系统 shell 需要有出色的进程和文件描述符支持,并有简洁的语法和内置函数,而我认为 Java 中不存在这些。

您可以将编程与脚本混合使用,例如 chef、puppet、vlad 等,但这意味着首先要学习 bash 脚本,因为这些语言非常明智地将命令委托给 shell。Ruby、Perl 和 Python 等语言不太冗长,您会看到它们被大量使用。Java 的冗长和它的一些核心价值(在 jvm 中完成所有事情,不要离开 ide)使其非常不适合这项任务。

答案4

你应该看看Bash 脚本

相关内容