bash: /home/rathin/.profile:: 通过“vi ~/.profile”编辑后尝试通过“source ~/.profile”重新加载时没有该文件或目录

bash: /home/rathin/.profile:: 通过“vi ~/.profile”编辑后尝试通过“source ~/.profile”重新加载时没有该文件或目录

在我编辑了我的~/.profileviavi命令之后,无法成功退出它。

因此我关闭了终端,当我重新打开终端后再次尝试时,它显示了名为的重复文件~/.profile.swp。所以我删除了它。

现在显示

bash: /home/rathin/.profile:: No such file or directory

当我尝试

source ~/.profile

它还显示错误

Error loading /home/user/.profile no such file or directory found.

当我重新启动笔记本电脑时。

这是输出vi ~/.profile

~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022

# if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

"~/.profile" 25 lines, 677 characters

任何帮助都感激不尽。

答案1

删除该文件的第一行。它显示

~/.profile: ...

并且 bash 尝试执行这个文件,其名称以 结尾:。该文件不存在,因此 bash 会抱怨,请注意:错误消息中的重复。

答案2

总结第一行应该是注释

# ~/.profile: executed by the command interpreter for login shells.

因此运行

perl -i.bak -0777 -pe 's/^/# /' ~/.profile

该命令#在第一行开头添加了一个,并创建了一个备份文件:~/.profile.bak


解释

  • -0777将行分隔符更改为 undef,让我们可以读取文件,将所有行一次性提供给 Perl。

  • -p逐行处理文件并打印输出。

  • -e使我们能够在命令行上指定想要运行的 Perl 代码。

相关内容