2017-07-14 49 views
1
/Users/ello/.zshrc:source:3: no such file or directory: 
/Users/ello/Projects/config/env.sh 
Ello-MacBook-Pro% /Users/ello/.zshrc:source 
zsh: no such file or directory: /Users/ello/.zshrc:source 
Ello-MacBook-Pro% /Users/ello/.zshrc 
zsh: permission denied: /Users/ello/.zshrc 
Ello-MacBook-Pro% 

在我愚蠢地编辑.zshrc文件后,发生了这种情况。现在剩下的文件中,尝试重置后壳,是这样的:如何重置并将zshrc文件恢复为默认?

# Created by newuser for 5.3.1 
# Add env.sh 

如何撤消一切,重新安装的zsh,或重新进行.zshrc文件?

这是在macOS Sierra上。

编辑:我重新安装哦,我-的zsh,导致此消息:

ain() { 
# Use colors, but only if connected to a terminal, and that terminal 
# supports them. 
if which tput >/dev/null 2>&1; then 
    ncolors=$(tput colors) 
fi 
if [ -t 1 ] && [ -n "$ncolors" ] && [ "$ncolors" -ge 8 ]; then 
RED="$(tput setaf 1)" 
GREEN="$(tput setaf 2)" 
YELLOW="$(tput setaf 3)" 
BLUE="$(tput setaf 4)" 
BOLD="$(tput bold)" 
NORMAL="$(tput sgr0)" 
else 
RED="" 
GREEN="" 
YELLOW="" 
BLUE="" 
BOLD="" 
NORMAL="" 
fi 

# Only enable exit-on-error after the non-critical colorization 
stuff, 
# which may fail on systems lacking tput or terminfo 
set -e 

CHECK_ZSH_INSTALLED=$(grep /zsh$ /etc/shells | wc -l) 
if [ ! $CHECK_ZSH_INSTALLED -ge 1 ]; then 
printf "${YELLOW}Zsh is not installed!${NORMAL} Please install zsh 
first!\n" 
exit 
fi 
unset CHECK_ZSH_INSTALLED 

if [ ! -n "$ZSH" ]; then 
ZSH=~/.oh-my-zsh 
fi 

if [ -d "$ZSH" ]; then 
printf "${YELLOW}You already have Oh My Zsh installed.${NORMAL}\n" 
printf "You'll need to remove $ZSH if you want to re-install.\n" 
exit 
fi 

# Prevent the cloned repository from having insecure permissions. 
Failing to do 
# so causes compinit() calls to fail with "command not found: 
compdef" errors 
# for users with insecure umasks (e.g., "002", allowing group 
writability). Note 
# that this will be ignored under Cygwin by default, as Windows ACLs 
take 
# precedence over umasks except for filesystems mounted with option 
"noacl". 
umask g-w,o-w 

printf "${BLUE}Cloning Oh My Zsh...${NORMAL}\n" 
hash git >/dev/null 2>&1 || { 
echo "Error: git is not installed" 
exit 1 
} 
# The Windows (MSYS) Git is not compatible with normal use on cygwin 
if [ "$OSTYPE" = cygwin ]; then 
if git --version | grep msysgit > /dev/null; then 
    echo "Error: Windows/MSYS Git is not supported on Cygwin" 
    echo "Error: Make sure the Cygwin git package is installed and is 
first on the path" 
    exit 1 
fi 
fi 
env git clone --depth=1 https://github.com/robbyrussell/oh-my-zsh.git 
$ZSH || { 
printf "Error: git clone of oh-my-zsh repo failed\n" 
exit 1 
} 


    printf "${BLUE}Looking for an existing zsh config...${NORMAL}\n" 
if [ -f ~/.zshrc ] || [ -h ~/.zshrc ]; then 
    printf "${YELLOW}Found ~/.zshrc.${NORMAL} ${GREEN}Backing up to 
~/.zshrc.pre-oh-my-zsh${NORMAL}\n"; 
mv ~/.zshrc ~/.zshrc.pre-oh-my-zsh; 
fi 

回答

0

有没有这样的事情 “默认”。你可以做的最好的是检查你的系统是否有/etc/skel/.zshrc。如果是,将其复制到您的家中。

当您第一次登录时,您的家将填入一切从/etc/skel

+0

我刚刚检查过,我没有看到这个文件。我应该尝试重新安装zsh吗? – HooWoo

+0

@ShruHooWoo这似乎是矫枉过正。只需从头开始创建一个新的'.zshrc'即可 - 它使用与zsh完全相同的语法。这不应该很困难,而且可能是一个很好的学习经历。 – SiKing

+0

我能够成功重制该文件,并且我无法感谢您(以及其他所有已回答的人)。 – HooWoo

3

zsh本身没有默认的用户配置。所以默认~/.zshrc其实不是~/.zshrc

但是,当您用标记问题时,我会假设您要恢复默认的oh-my-zsh配置。对于这一点,应该足以从哦,我-的zsh安装路径复制template/zshrc.zsh-template,通常~/.oh-my-zsh

cp ~/.oh-my-zsh/template/zshrc.zsh-template ~/.zshrc 

您可能需要备份当前~/.zshrc提前。虽然它现在可能有一些问题,但您仍然可能想要在恢复为默认设置后查找某些设置。