标签: bashrc

如何正确添加路径到PATH?

我想知道必须向PATH环境变量添加新路径的位置。我知道这可以通过编辑来完成.bashrc(例如),但不清楚如何做到这一点。

这边走:

export PATH=~/opt/bin:$PATH
Run Code Online (Sandbox Code Playgroud)

或这个?

export PATH=$PATH:~/opt/bin
Run Code Online (Sandbox Code Playgroud)

bash path environment-variables bashrc

1174
推荐指数
11
解决办法
278万
查看次数

315
推荐指数
4
解决办法
8万
查看次数

.bashrc 的目的是什么,它是如何工作的?

我找到了该.bashrc文件,我想知道它的用途/功能。还有它是如何以及何时使用的?

bash bashrc

228
推荐指数
3
解决办法
65万
查看次数

如何设置我的默认 shell 来启动 tmux

我希望我的默认 bash shell 直接进入 tmux,而不是每次都必须输入 tmux。

shell bash terminal tmux bashrc

128
推荐指数
7
解决办法
13万
查看次数

交互式 shell、登录 shell、非登录 shell 及其用例之间有什么区别?

可能的重复:
登录 Shell 和非登录 Shell 之间的区别?

我一直在查看 /etc/profile。bash.bashrc 以查看它们是如何运行的,并注意一些是由非登录 shell 执行的,一些与交互式 shell 一起工作等。

这种类型的外壳有什么区别,即交互式和非交互式、登录和非登录等?

这个问题可能非常基本,但似乎我首先需要问什么是 shell。什么是 shell,它的相关性是什么,你如何使用它,以及它为什么存在?

更新:为了更好地理解问题的意图,除了定义之外,我还需要了解一种外壳或另一种外壳的用例。帮助理解的是用例,而不仅仅是字典定义。

shell bashrc

95
推荐指数
2
解决办法
7万
查看次数

为什么 bashrc 会检查当前 shell 是否是交互式的?

在我的拱安装,/etc/bash.bashrc以及/etc/skel/.bashrc包含这些行:

# If not running interactively, don't do anything
[[ $- != *i* ]] && return
Run Code Online (Sandbox Code Playgroud)

在 Debian 上,/etc/bash.bashrc有:

# If not running interactively, don't do anything
[ -z "$PS1" ] && return
Run Code Online (Sandbox Code Playgroud)

并且/etc/skel/.bashrc

# If not running interactively, don't do anything
case $- in
    *i*) ;;
      *) return;;
esac
Run Code Online (Sandbox Code Playgroud)

man bash然而,根据,非交互式 shell 甚至不读取这些文件:

   When  bash  is  started  non-interactively,  to run a shell script, for
   example, it looks for the variable …
Run Code Online (Sandbox Code Playgroud)

bash bashrc

79
推荐指数
3
解决办法
2万
查看次数

~/.profile, ~/.bashrc, ~/.bash_profile, ~/.gnomerc, /etc/bash_bashrc, /etc/screenrc ... 有什么区别?

关于SOaskubuntu的问题的答案,以及翻阅(和阅读的标题)$HOME/etc/,指出了一些可用于设置环境变量的文件,包括:

  • ~/.profile
  • ~/.bashrc
  • ~/.bash_profile
  • ~/.gnomerc
  • ~/.Rprofile
  • /etc/bash_bashrc
  • /etc/profile
  • /etc/screenrc

/etc/为所有用户收集这些文件,而其中的文件$HOME是特定于用户的。我还收集.profile在登录.bashrc时加载而在/bin/bash执行时加载的信息。我也明白不同的程序有不同的设置文件(例如.RprofileR)。但我希望得到一些澄清:

  • *rc*profile文件本质上的区别?
  • 此类文件的范围是什么(例如,Linux 通常使用哪些文件)
  • 是否有层次结构(例如.bashrc覆盖 中设置的变量.settings
  • 此类文件有什么好的参考?对于这些文件中的选项?

相关问题

bash settings environment-variables profile bashrc

72
推荐指数
2
解决办法
6万
查看次数

定义新别名和函数后刷新别名和函数?

当我在.bash_aliases文件中定义一个新别名或在文件中定义一个新函数时.bashrc,是否有一些刷新命令能够立即使用新别名或函数而无需关闭终端(在我的情况下,xfce4-terminal 打开了几个选项卡,打开了许多文件并且在工作中)?

bash terminal alias function bashrc

65
推荐指数
3
解决办法
9万
查看次数

在 .bashrc 中使用导出

我注意到在我的前面.bashrc有一些行export,例如

export HISTTIMEFORMAT="%b-%d  %H:%M  "
...
export MYSQL_HISTFILE="/root/.mysql_history"
Run Code Online (Sandbox Code Playgroud)

而其他人则没有,例如

HISTSIZE=100000
Run Code Online (Sandbox Code Playgroud)

我想知道,首先,这是否正确,其次export.bashrc.

bash environment-variables bashrc

58
推荐指数
3
解决办法
7万
查看次数

是否可以检查别名的定义位置?

别名,例如llalias命令定义的。

我可以检查命令,比如type ll哪些打印

ll is aliased to `ls -l --color=auto'
Run Code Online (Sandbox Code Playgroud)

command -v ll打印

alias ll='ls -l --color=auto'
Run Code Online (Sandbox Code Playgroud)

或者alias ll也打印

alias ll='ls -l --color=auto'
Run Code Online (Sandbox Code Playgroud)

但我似乎无法找到那里的别名定义,即一个文件,如.bashrc在运行中的shell,或者手动。在这一点上,我不确定这是否可能。

我应该简单地浏览所有加载的文件bash并检查每个文件吗?

bash terminal bashrc

58
推荐指数
3
解决办法
3万
查看次数