为什么zsh不打印不包含新行的字符串?

时间:2014-06-12 06:52:17

标签: zsh

我发现zsh不打印不包含新行的字符串。 这是一个例子:

[240 ~]>echo -n "35" > js.id
[240 ~]>cat js.id
[240 ~]>xxd -p js.id
3335

如果文件js.id包含新行,则zsh会正常打印所有字符串。

[240 ~]>echo "35" > js.id
[240 ~]>cat js.id
35
[240 ~]>xxd -p js.id
33350a

BTW,这是我的setopt配置:

[240 ~]>setopt PROMPT_CR PROMPT_SP
setopt: no such option: PROMPT_SP
[240 ~]>setopt
interactive
login
monitor
shinstdin
zle
[240 ~]>echo -n 'str'
[240 ~]>echo 'str'
str

1 个答案:

答案 0 :(得分:0)

也许您(或您复制的某些配置?)取消设置选项PROMPT_SPPROMPT_CR

启动zsh忽略所有配置文件,以验证默认情况下它是否显示这样的文件:

 ~ % zsh -f
 % echo -n 35 > int.txt   
 % cat int.txt 
 35%
 %

请注意,如果Zsh未在换行符(%)上结束,则会在文件末尾显示PROMPT_SP