今天连接到云服务器突然发现输入命令无效
出现这种情况

尝试使用Ctrl+C 退出

结果变成-bash-4.2#
网上查了半天 很多人多说是误删了两个文件
但我查看发现这两个文件都存在
输入命令: l. 查看所有隐藏文件

如果没有这两个隐藏文件就从etc下复制过来

cp /etc/skel/.bashrc /root/
cp /etc/skel/.bash_profile  /root/

然而我的这两个文件都存在,说明不是这个问题
终于翻了好多资料发现
这个问题出现的原因是.bashrc文件被破坏,导致里面没有该有的内容
于是编辑.bashrc文件

vim .bashrc

在最后一行加入

PS1='[\u@\h \W]$ '>>.bashrc


然后 :wq 保存
刷新.bashrc文件

source .bashrc

这样就解决了

但是发现每次打开Xshell终端,都要source一下.bashrc
再研究过程中发现简书上有一篇文章解决了此问题:
https://www.jianshu.com/p/35ad1b375e50

因为Linux启动时读取配置文件的顺序。
在刚登录Linux时,首先启动/etc/profile 文件,然后再启动用户目录下的 ~/.bash_profile~/.bash_login~/.profile文件中的其中一个,
执行的顺序为:~/.bash_profile~/.bash_login~/.profile

如果 ~/.bash_profile文件存在的话,一般还会执行 ~/.bashrc文件。
因为在~/.bash_profile文件中一般会有下面的代码:

if [ -f ~/.bashrc ] ; thensource .bashrc
fi

~/.bashrc中,一般还会有以下代码:

if [ -f /etc/bashrc ] ; thensource .bashrc
fi

所以,~/.bashrc会调用/etc/bashrc文件。最后,在退出shell时,还会执行 ~/.bash_logout文件。

总结一下,这些配置文件的执行顺序为:/etc/profile→ (~/.bash_profile | ~/.bash_login | ~/.profile)→~/.bashrc/etc/bashrc~/.bash_logout

因为在~/.bash_profile文件中没有下面的代码:

if [ -f ~/.bashrc ] ; thensource .bashrc
fi

所以linux就不会自动执行~/.bashrc文件,所以你每次登陆的时候都要手动输入source ~/.bashrc
解决方法:
vim ~/.bash_profile在文件内部输入

   # 加载.bashrc文件
if test -f .bashrc ; then
source .bashrc
fi

输入:wq保存并退出即可。

关于各个配置文件的作用域
/etc/profile
此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。

/etc/bashrc:
为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取(即每次新开一个终端,都会执行bashrc)。

~/.bash_profile:
每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次。默认情况下,设置一些环境变量,执行用户的.bashrc文件。

~/.bashrc:
该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。

~/.bash_logout:
当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承 /etc/profile中的变量,他们是"父子"关系。

~/.bash_profile: 是交互式、login 方式进入 bash 运行的 ~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。

linux云服务终端提示符显示-bash-4.2#解决方法相关推荐

  1. linux云服务器,内存占用率很高解决方法

    首先查看自己的进程 看看那个占有内存过高 先使用top 查看那个占用的内存大 第一行 系统时间 运行时间 当前登录用户 负载均衡 第二行 进程数 运行数 休眠数 僵尸进程 第四行 用户空间 内核空间 ...

  2. Linux命令终端提示符显示-bash-4.2#解决方法【转载】

    昨天在配置linux,突然发现root登录的CRT的终端提示符显示的是-bash-4.2# 而不是root@主机名 + 路径的显示方式.搞了半天也不知道为什么出现这种情况.今天终于搞定这个问题, 原因 ...

  3. Linux云服务-Mysql卸载篇

    Linux云服务-Mysql卸载篇 (1)查看mysql安装包 yum list installed | grep mysql (2)进行删除 yum remove mysql.x86_64 继续删除 ...

  4. linux命令框显示中文乱码_CentOS终端命令行显示中文乱码的解决方法

    这篇文章主要介绍了CentOS终端命令行显示中文乱码的解决方法,以及测试方法和缺少中文字体时的解决方法,需要的朋友可以参考下 安装CentOS的时候选择了中文,结果在终端不能显示中文,都是乱码,解决方 ...

  5. linux显卡驱动运行情况,Linux装完显卡驱动后分辨率显示不正常的解决方法

    不少人在更新完Linux显卡驱动后,出现分辨率显示不正常的现象,遇到这类问题不用担心,下面小编就教你如何解决Linux显卡驱动安装后分辨率无法正常显示的问题,一起来学习下吧. 驱动安装: 这里得说明一 ...

  6. 终端中显示git分支名称的方法

    终端中显示git分支名称的方法   大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博客地址为:亓官劼的博客,B站昵称为:亓官劼,地址为亓官劼 ...

  7. linux网络连接红叉号,win10能上网,但右下角宽带连接图标显示红叉的解决方法

    原创内容,转载请注明出处: https://www.myzhenai.com.cn/post/2196.html https://www.myzhenai.com/thread-17859-1-1.h ...

  8. android 前台服务自定义布局不显示_Android自定义LinearLayout布局显示不完整的解决方法...

    发现问题 原需求,在一个伸缩列表中,自定义LinearLayout继承LinearLayout动态添加布局. 然而实现的时候:一共遍历了30条数据,却只显示了一条 断点查看代码:遍历addView() ...

  9. linux桌面无法显示U盘,电脑桌面右下角不能显示u盘图标解决方法

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 电脑桌面右下角不能显示u盘图标解决方法,大家都遇到过这种情况把,u盘插入电脑,结果右下角不显示u盘**入的图标. 现象:任务栏小喇叭和u盘图标显示有问题, ...

最新文章

  1. 谷歌NIPS论文Transformer模型解读:只要Attention就够了
  2. python循环生成二维数组_嵌套循环二维数组的计算与构造 - python
  3. JavaScript的文档窗口事件
  4. Android中Spinner的使用
  5. python discuz搜索api_Python + Bottle + 谷歌搜索Api 实现简单搜索引擎
  6. Jenkins的安装配置
  7. 怎么锁定电脑屏幕_怎么录制视频?在电脑上录制视频的步骤详解
  8. 拓端tecdat|TensorFlow 2建立神经网络分类模型——以iris数据为例
  9. Maven聚合与继承
  10. Systrace分析app启动分析
  11. Netty实战——Channel、EventLoop和ChannelFuture详解
  12. 李宏毅深度学习HW2 收入预测 (logistic regression)
  13. 【MSFconsole进阶】auxiliary模块:信息收集、扫描、嗅探、指纹识别、口令猜测和Dos攻击等
  14. MAC下切换多个IP的Shell脚本
  15. C# 使用Magick.NET进行图片格式转换
  16. 小白量化《穿云箭集群量化》(1)小白草根超级量化软件介绍
  17. 对潇潇暮雨洒江天,一番洗清秋。渐霜风凄紧,关河冷落,残照当楼。是处红衰翠减,苒苒物华休。唯有长江水,无语东流。不忍登高临远,望故乡渺邈,归思难收。叹年来踪迹,何事苦淹留?想佳人,妆楼颙望,误几回、天际
  18. QSPI FLASH与SD卡同时支持fatfs文件系统
  19. 笔记本电脑计计算机硬盘分区,笔记本电脑如何分区,手把手教你笔记本电脑如何分盘...
  20. Linu系统——基础知识1

热门文章

  1. 深度学习笔记:利用numpy从零搭建一个神经网络
  2. 你知道css单位fr吗?
  3. Postman接口调试神器
  4. java 之 桥接模式(大话设计模式)
  5. 15种主要编程语言介绍及应用场合
  6. 通过shell例子来学习循环结构的语法
  7. Dictionary帮助类
  8. struts文件上传以及中文乱码问题
  9. 爬虫 - CNN Business
  10. 2/100. Hamming Distance