使用Ruby自动化任务

4
我想学习一些脚本编写,以帮助自动化一些常见任务。Ruby是一个好的编程语言吗?有哪些宝石(gems)会有用?
我想制作类似于这个Bash脚本的脚本。

http://nikhgupta.com/code/initialize-gitolite-bash-script/

这个工具可以自动化设置新的gitolite仓库。

你只需要学习bash、sed、grep等基础知识吗?

3个回答

3
听起来需要用Ruby和Rake完成这项工作!请查看this。 在我看来,Python和Ruby是最好的语言,特别是在自动化*NIX系统任务方面。作为一个Windows迷,我会坚持使用PowerShell。

从我的经验来看,对于自动化 Unix 或任何需要 Telnet 的东西,没有什么可以与 Expect(Tcl)相提并论。它欺骗被调用程序认为有一个用户在其端点的能力非常有用。话虽如此,Python 和 Ruby 也可以非常适用于此。 - RHSeeger
啊,我居然忘记了Tcl!那现在就有三个选择了。 - RudiMK
原来 Ruby 甚至有一个 Gitolite 的 gem:https://github.com/wingrunr21/gitolite - user1039523

0

在 Linux/Unix 管理中,良好的 shell 脚本技能是必不可少的。对于更高级的自动化,了解 Python、Perl 或 Ruby 也是很有帮助的。实际上,你选择哪个语言并不重要。一旦你掌握了其中一个,你会发现学习其他语言变得非常容易。

就我个人而言,Ruby 的软件包管理系统(gems)总是让我避免使用它作为脚本平台。其他人持有不同的观点,并喜欢它。

选择一个语言,然后深入学习。


0

几年前我会建议使用PERL来完成这样的事情。我的意见是,拥有一些shell脚本的基础知识总是个好主意,但如果你真的想做一些“大”事情,请使用一种脚本语言(比如Python,Ruby或Perl)。

与此同时,我认为没有理由不使用Ruby来完成这样的事情。我真的很喜欢这种语言,你可以在Ruby中做任何你可以在PERL中做的事情(并且你将拥有一个真正的面向对象的语言)。

另一方面,CPAN是使用PERL的一个相当不错的理由。Ruby gems也类似,但我认为可用的gems没有CPAN模块那么多。但是请自行比较(http://rubygems.org/)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接