【发布时间】:2015-08-19 19:48:33
【问题描述】:
zsh 有这个方便的功能,可以使用管道标准输入到文件
>file
bash 相当于什么?
【问题讨论】:
标签: bash stdin zsh io-redirection stdio
zsh 有这个方便的功能,可以使用管道标准输入到文件
>file
bash 相当于什么?
【问题讨论】:
标签: bash stdin zsh io-redirection stdio
请参阅@chepner 的帖子,了解zsh 如何做到这一点的完整说明。 bash 中的等价物是:
cat > file
每当我们看到cat 时,警钟就会响起,它是often abused,但这是对该程序的合法使用。严格来说只有重定向部分> file是bash,cat本身是一个独立的程序。
【讨论】:
zsh 中> file 的含义取决于某些选项的设置方式。如果设置了SH_NULLCMD,则它等效于: > file,这将是任何sh 派生的shell 中的等效命令,包括bash。
有关详细信息,请参阅标题 REDIRECTIONS WITH NO COMMAND 下的 man zshmisc。
更新:我完全错了。设置SH_NULLCMD 完全改变了> file 的含义,使> file 等价于bash 中的: > file,而不是bash 中的: > file 等价于zsh 中> file 的默认行为。
正如 cdarke 指出的(他应该发布答案),bash 中的正确等价物是 cat > file。
【讨论】:
: > file 在 bash 中从stdin 读取吗?确定是cat > file?