linux .bashrc语法错误:意外的文件结尾

uajslkp6  于 2023-11-17  发布在  Linux
关注(0)|答案(9)|浏览(334)

我得到一个意外的文件结束错误。我真的不知道如何修复它。

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

# User specific aliases and functions

export PS1='\[\e[0;32m\]\u\[\e[m\] \[\e[1;34m\]\w\[\e[m\] \[\e[1;32m\]\$\[\e[m\] \[\e[1;37m\]'

export LS_COLORS='di=35;1'

alias la='ls -lah'
alias cdu='cd /home/hzhang/primary'

#module load gnu-compilers/4.7.0
#module load mvapich3/gnu/1.7

.ls /opt/intel/Compiler/11.1/072/bin/ifortvars.sh intel64

#PATH=$PATH:/home/hzhang/primary/over2.2e/bin_dp:/home/hzhang/primary/foiltest
PATH=$PATH:/opt/overflow/intel/serial/bin_dp/:/home/hzhang/primary/chimera2.1/bin_dp/:/u/primary/hzhang/pegasus/bin_dp
export PATH

ulimit -s unlimited

字符串

f4t66c6m

f4t66c6m1#

由于缺少“fi”行,我遇到了同样的错误。请确保忽略语法错误。原始的.bashrc位于/etc/skel/中。因此只需运行以下命令:
cp /etc/skel/.bashrc ~

swvgeqrz

swvgeqrz2#

我也遇到了类似的问题。使用Windows 10自带的bash,不知何故,行尾已经更改为Windows行尾(CRLF)。将文件更改回使用UNIX行尾解决了这个问题。
将eh行尾转换为unix行尾,并查看这是否解决了问题。如果在Vim中编辑,请输入命令:set fileformat=unix并保存文件。其他几个编辑器可以转换行尾,例如Notepad++Atom

tkclm6bt

tkclm6bt3#

这样的语法错误很容易找到,乍一看文件看起来没问题,所以我建议你注解掉每一行(用#),看看错误是否仍然存在。
然后只做二进制搜索,也就是在文件的前半部分注解。如果这样做可以继续第三个季度(否则与第一季度)。等等。

ktecyv1j

ktecyv1j4#

我也遇到过类似的问题,原来是函数末尾缺少了一个“}”。我备份了这个错误的函数(为了了解我的设置是什么),然后复制了原来的fine(cp /etc/skel/.bashrc ~),并再次添加了这些行。

5fjcxozz

5fjcxozz5#

我也有同样的问题,因为我在我的. blog文件中做了一些更改,并搞砸了终端.跟随命令修复了我的问题:

ecp /etc/skel/.bashrc ~

字符串

jbose2ul

jbose2ul6#

此.bashrc应已从windows. fromdos .bashrcé编辑,以更正此文件,从而获取其源代码。

wfsdck30

wfsdck307#

谢谢你的主题。
而不是注解掉整个文件或复制和恢复它,你可以做一个diff:

$ diff .bashrc /etc/skel/.bashrc

字符串
如果它是简单的,你很快就会看到它。
我也遇到了同样的问题。我注解掉了一个fi,却没有注意到它。

ivqmmu1c

ivqmmu1c8#

只需从终端通过gedit .bashrc打开文件文档将打开,转到底部,看看是否缺少fi,如果没有添加它.只需将“fi”放在最后的左边距,并关闭所有命令“fi”. see here

goucqfw6

goucqfw69#

如果!shopt -oq posix; then if [ -f /usr/share/bash-completion/bash_completion ]; then . /usr/share/bash-completion/bash_completion elif [ -f /etc/bash_completion ]; then . /etc/bash_completion fiFi在我的终端的第一行,我得到了There is error at the end of/.bashrc file但当我将Fi更改为Fi时,它工作正常,如
. if!shopt -oq posix; then if [ -f /usr/share/bash_completion ]; then . /usr/share/bash_completion elif [ -f /etc/bash_completion ]; then . /etc/bash_completion fifi

相关问题