由于我熟悉Ruby,所以我要在OSX上使用它来编写一些东西。但是后来我想,也许我错过了船。我知道很多理由喜欢Ruby对Bash(或任何sh兼容的命令语言解释器),但我不知道任何理由不去。直接编程shell的优点是什么?
我打算在必要时利用系统命令使用系统。
注意:我已经知道Ruby并不总是在那里,但我对技术,语义和语法标准主要感兴趣。
编辑:Ruby不总是存在,我的意思是它不是所有* nix发行版的标准部分,不同于vi。
除了一件事外,shell的编程语言很糟糕。
管道。
管壳的编程语言完全是岩石。
|,&和;运算符,加()和“`形成一个整洁的小语言来描述管道。
一个& b是并发的
一个 ; b是顺序的
a | b是一个饲料b
shell编程的那部分岩石。
想想(a& b& c)|三通捕捉|分析是一种难以在Python(或Ruby)中表达的东西。你可以用iterpipes做很多,但不完全是这样。
其余的大部分可以没有生活,并使用Python(或Ruby),你会更快乐,更有成效。
要注意的最大的事情是涉及到shell级别的任何事情。一旦你开始尝试做“计算”,你已经脱离了shell的最佳位置,你应该停止在shell中的编程,并重新思考你在做什么。