在 ZSH 中获取文件不起作用

在 ZSH 中获取文件不起作用

因为我的 .zshrc 变得很大,所以我选择只获取其他文件,但现在登录 ssh 后遇到一些错误:

/home/rob1nn/.r_inc/exports:13: parse error near `\n'
/home/rob1nn/.r_inc/functions:39: parse error near `in^M'
/home/rob1nn/.r_inc/modules:5: command not found: compinit^M
/home/rob1nn/.r_inc/modules:6: command not found: promptinit^M
/home/rob1nn/.r_inc/modules:7: command not found: zsh-mime-setup
/home/rob1nn/.r_inc/optins:setopt:4: no such option: SHARE_HISTORY^M
/home/rob1nn/.r_inc/optins:setopt:5: no such option: RM_STAR_WAIT^M
/home/rob1nn/.r_inc/optins:setopt:6: no such option: ZLE^M
/home/rob1nn/.r_inc/optins:setopt:7: no such option: NO_FLOW_CONTROL^M
/home/rob1nn/.r_inc/optins:setopt:8: no such option: NO_BEEP^M
/home/rob1nn/.r_inc/startscreen:4: command not found: clear^M

我使用以下方式获取文件来源~/.r_inc/functions例如,但它不会加载其中任何一个

答案1

您保存了使用 DOS 行结尾 (CRLF) 的文件。您的编辑器会自动识别这一点并且不会显示 ^M 字符,但它们仍然存在。 (它可能还有其他一些指示该文件使用 DOS 行结尾。)

您需要删除 CR 字符。一种方法是这样的:

perl -pi -e 's/\r//' /home/rob1nn/.r_inc/*

相关内容