why?

Because bash feels clunky to write and work with for anything non-trivial, especially compared to other scripting languages.

Why not another scripting language (no compile necessary)?

Because bash and sh are installed nearly everywhere. Any other scripting language means the user is required to have that installed, and that is far less likely to be the case.

If I could write my scripts in a nice syntax, but be sure my users will be able to use it effortlessly by distributing to them compiled versions, then that would make both of our lives easier!

Thoughts? Are there any languges that do this?

  • swordsmanluke
    link
    fedilink
    arrow-up
    3
    ·
    1 year ago

    I’m gonna pile in with yet another option that isn’t a language that compiles to bash…

    Consider Ruby for easier shell scripting. With its back tick syntax for executing shell commands, it’s quick to use when you want to glue together a series of commands. …and then you get to use a sane syntax for your script’s logic.

    Ex:

    # Check my history for all usages of the xsv command
    # and extract the filename
    csv_files = `grep ~/.zsh_history "xsv" | awk '{print $3}'`.
                         split("\n").
                         map(&:chomp)
    
    # list any csv with my phone number
    csv_files.select { | filename|
      `grep #{filename} "555-1234"`.chomp != ""
    }.each {|filename| puts filename}