0

编辑:该示例在纯 zsh 中工作。我的 prezto 安装不起作用。似乎是prezto中的一个错误。

我试图在 zshsponge中使用别名。SP但结果相当令人惊讶。

没有全局别名:

❯ echo xxx >! xxx
❯ cat xxx | sponge xxx
❯ cat xxx  # non-empty file
xxx

使用全局别名:

❯ echo xxx >! xxx
❯ alias -g SP='| sponge '
❯ cat xxx SP xxx
❯ cat xxx
(empty file, no lines are shown here)

奇怪行为的原因是什么?我怎样才能让它工作?

4

1 回答 1

0

你正在用一个参数替换应该是一个管道

cat xxx SP xxx

意味着 cat 现在有 3 个参数

alias -g SP='sponge'

cat xxx | SP

应该给你想要的结果

于 2017-06-14T17:54:41.637 回答