Fish 中的多行命令可以有注释吗?

Rub*_*una 5 scripting shell-script fish

bash它可能做的

my_function() {
  echo "hello" |
  #remove 'l'
  tr -d 'l'
}
Run Code Online (Sandbox Code Playgroud)

但在fishhttp://fishshell.com)我无法做到同样的事情:

function my_function
  echo "hello" | \
  # remove 'l' 
  tr -d 'l'
end
Run Code Online (Sandbox Code Playgroud)

我也尝试过在评论末尾使用反斜杠,但没有成功。

我倾向于在 中经常使用这个习惯用法bash,通过管道传输多个命令并将每个命令分成自己的行,并为每个命令添加注释。

有什么方法可以实现类似的目标fish吗?

Kon*_*ski 4

这是不可能的,因为https://github.com/fish-shell/fish-shell/issues/983报告了错误。

然而,在 Fish-shell 存储库的 ast 分支(现已合并,但默认情况下禁用)中,有关于真正的鱼语法(而不是快速 hacky 解析器)的工作。目前,还没有补丁支持此语法,但它仍在进行中,我几乎可以肯定最终的语法将支持此语法。