![为什么 .bashrc 和 .profile 中导出的变量的生命周期不同?](https://linux22.com/image/201412/%E4%B8%BA%E4%BB%80%E4%B9%88%20.bashrc%20%E5%92%8C%20.profile%20%E4%B8%AD%E5%AF%BC%E5%87%BA%E7%9A%84%E5%8F%98%E9%87%8F%E7%9A%84%E7%94%9F%E5%91%BD%E5%91%A8%E6%9C%9F%E4%B8%8D%E5%90%8C%EF%BC%9F.png)
如果从 .profile 导出变量,则它会出现在我登录后打开的所有终端中,即使该变量在登录时仅导出一次。如果从 .bashrc 导出变量(每次打开新终端时都会获取该变量),我可以使用它,但如果从 .bashrc 删除变量导出,然后打开新终端,则该变量将不再存在。那么为什么从 .profile 导出的变量(在登录时读取一次)是永久的,而从 .bashrc 导出的变量却不是?
根据我的理解,通过 .bashrc 导出就像在每个终端会话中手动键入它一样。通过 .profile 导出实际上会记住整个登录会话中的变量还是实际发生了什么,因此变量会永久存在?