有没有编译到Bash的任何语言?

前端之家收集整理的这篇文章主要介绍了有没有编译到Bash的任何语言?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我喜欢和讨厌写Bash。我喜欢它的流水线操作文件和处理(我同意 this popular question,这方面比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

这是一个超级设计的例子,语法是一个strawman(主要是从CoffeeScript的灵感,但保留一流的命令,分离变量和松散键入的基本Bash的概念)。

无论如何,只是一个问题和食物的思想。我喜欢能够写我的脚本比Bash更好的东西。 =)谢谢!

你也可以尝试Batsh,它是一个DSL( Domain-Specific Language),编译C语法语言到Bash(和Windows批处理)。

> Project
> Online demo

猜你在找的Bash相关文章