Ame*_*ath 29 bash sh zshrc shopt
我已将我的shell更新为ZSH.当我来源〜/ .bashrc.我收到了这个错误
哟医生有一些错误.当我执行此命令
echo "export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules" >> ~/.bashrc && source ~/.bashrc
Run Code Online (Sandbox Code Playgroud)
/home/amerrnath/.bashrc:17: command not found: shopt
/home/amerrnath/.bashrc:25: command not found: shopt
/home/amerrnath/.bashrc:109: command not found: shopt
/usr/share/bash-completion/bash_completion:35: parse error near]]"
请帮我解决这个问题
sud*_*doz 58
zsh使用env配置文件~/.zshrc,而不是~/.bashrc.
所以你需要将你的env设置附加到.zshrc文件然后
source ~/.zshrc
Run Code Online (Sandbox Code Playgroud)
它必须工作.
Tai*_*aiz 29
要在〜/ .bashrc中放置任何内容:
切换到bash:
exec bash
Run Code Online (Sandbox Code Playgroud)
然后
source ~/.bashrc
Run Code Online (Sandbox Code Playgroud)
切换到bash不会影响新的终端窗口.但是如果你想将当前窗口切换到zsh.
切换到zsh:
exec zsh
Run Code Online (Sandbox Code Playgroud)
小智 17
shopt不是命令,而是内置的shell.bash知道该怎么做因为它是bash内置的,但是zsh不知道它是什么.您将需要查看setopt哪个是zsh内置函数,并将这些值放入新的.zshrc脚本中.
小智 10
为shopt创建别名并通过zsh调用
这里描述了一个快速解决方案:https://github.com/larz258/Zshopt
sudo vi /usr/bin/shopt
Run Code Online (Sandbox Code Playgroud)
店内
#!/bin/bash
args='';
for item in $@
do
args="$args $item";
done
shopt $args;
Run Code Online (Sandbox Code Playgroud)
使其可执行
sudo chmod +x /usr/bin/shopt
Run Code Online (Sandbox Code Playgroud)
在 .zshrc 中创建别名
echo "alias shopt='/usr/bin/shopt'" >> ~/.zshrc
Run Code Online (Sandbox Code Playgroud)
你的bashrc文件是为bash.zsh不是bash.
我很惊讶zsh是试图加载你.bashrc的.
如果不是,您手动(从.profile或类似)采购.别那样做.
然后你可以编写一个合适的zshinit文件.
如果你想使用zsh那么你需要使用zsh而不是bash.
shopt 是一种打击主义.
[[ 是一种打击主义.
shopt不是命令,而是内置的 shell。您可以通过在 bash\xef\xbc\x9a 中运行以下命令来找到这一点
type shopt\nRun Code Online (Sandbox Code Playgroud)\n\n输出将是:
\n\nshopt is a shell builtin\nRun Code Online (Sandbox Code Playgroud)\n\n步骤1:
\n\necho "#! /bin/bash\\n\\nshopt \\$*\\n" > /usr/local/bin/shopt\nRun Code Online (Sandbox Code Playgroud)\n\n然后你会得到/usr/local/bin/shopt:
\n\n#! /bin/bash\n\nshopt $*\nRun Code Online (Sandbox Code Playgroud)\n\n第2步:
\n\nchmod +x /usr/local/bin/shopt\nRun Code Online (Sandbox Code Playgroud)\n\n步骤3:
\n\nln -s /usr/local/bin/shopt /usr/bin/shopt\nRun Code Online (Sandbox Code Playgroud)\n\n步骤4:
\n\necho "alias shopt=\'/usr/bin/shopt\'" >> ~/.zshrc\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
49380 次 |
| 最近记录: |