如何在别名定义中写入换行符?

How can I write a newline char in an alias definition?

在我的 ~/.bash_aliases 文件中 有:msr='sed :a;N;$!ba;s/\n/ "\/home"/" \/there"\n/g'

它被用作示例,我必须在别名中放置换行符。我该怎么做?

我收到如下错误:

syntax err near unexpected token newline

使用函数而不是别名可以轻松绕过这个问题,并且通常会绕过一大堆类似的问题。

msr () {
    sed ':a;N;$!ba;s/\n/ "\/home"/" \/there"
/g' "$@"
}

通常没有理由比函数更喜欢别名。