我既喜欢又讨厌写巴斯。我喜欢 所以在操作文件和处理进程方面的简化(我同意 这个流行的问题在这方面比 Python、 Ruby 等要好得多) ,但是我喜欢 仇恨的语法,特别是在条件句、循环等方面。
(这是主观的,但我觉得它既令人困惑又令人厌烦。例如,读取时使用 $var
,写入时使用 var
; 如果在 =
周围有空格,那么写入无声地失败; 使用 regexp 时使用 ifs 中的双括号; 有时使用双分号,有时使用单分号,等等
作为 CoffeeScript 的忠实粉丝,它可以编译成 JS,我一直想知道: 有没有哪种语言具有 Python/Ruby/CoffeeScript 这样的语言的美学/语法,但是它是以 Bash 而不是其他运行时的形式编译和运行的?
例如,我希望能够用更简单的语法编写大部分 -Bash:
$AGGREGATE_FILENAME = 'allfiles.txt'
if not exists $AGGREGATE_FILENAME
touch $AGGREGATE_FILENAME
for $file in files/*
cat $file >> $AGGREGATE_FILENAME
switch $1
case 'test'
run-tests
echo 'Tests finished!'
case 'deploy'
echo 'Packaging...'
mv foo bar/
deploy-bar
这是一个超级人为设计的示例,语法是一个草稿人(大部分灵感来自 CoffeeScript,但保留了一级命令的基本 Bash 概念,与变量分离,以及松散的类型)。
不管怎样,只是一个问题和思考的食物。我希望 爱能够比 Bash 更好地编写我的脚本。=)谢谢!