什么是Linux中的.bashrc文件?

时间:2020-02-23 14:37:41  来源:igfitidea点击:

.bashrc文件是用户登录时执行的脚本文件。
该文件本身包含终端会话的一系列配置。
这包括设置或者启用:着色,完成,shell历史记录,命令别名等。

这是一个隐藏文件,简单的ls命令不会显示该文件。

要查看隐藏的文件,可以运行以下命令:

$ls -a

您可以在第一列中看到.bashrc命令。
可以更改.bashrc的内容以定义函数,命令别名和自定义bash。

.bashrc文件包含很多注释,使它易于理解。

要查看bashrc文件:

$cat .bashrc

下面提供了一些编辑.bashrc的示例。

在bashrc中定义函数

bashrc可用于定义减少冗余工作的功能。
这些功能可以是基本命令的集合。
这些函数甚至可以使用终端中的参数。

让我们定义一个函数,以更具描述性的方式告诉日期。

首先,您需要在编辑模式下输入.bashrc文件。

$vi .bashrc 

Bashrc文件

这就是终端的外观。
要开始编辑,请按键盘上的任意字母。
在文件末尾添加以下代码:

today()
{
  echo This is a `date +"%A %d in %B of %Y (%r)"" return
}

按Escape键。
然后要保存并退出vi,请按冒号(:),然后按" wq"并输入。

更改已保存。
要反映bash中的更改,请退出并再次启动终端。

或者使用命令:

$source .bashrc 

要运行刚刚创建的函数,请立即致电:

$today

让我们创建另一个功能。
这将合并创建目录然后将目录输入到单个命令中的过程。

在bashrc文件中添加:

mkcd ()
{
mkdir -p -- "" && cd -P -- ""
}

这结合了两个单独的命令:

  • mkdir:创建目录
  • cd:用于更改当前目录

$1表示与函数调用一起传递的第一个参数。

要使用此功能:

$mkcd directory_name

此命令将传递" directory_name"作为参数。

我们的函数将首先使用mkdir以名称" directory_name"创建目录,然后使用cd进入" directory_name"。

在.bashrc中定义别名

别名是同一命令的不同名称。
将它们视为较长格式命令的快捷方式。
.bashrc文件已经具有一组预定义的别名。

作为用户,如果您经常使用别名,则可以将其保存在.bashrc文件中,而不是每次打开终端时都定义别名。

例如,我们可以用以下代码替换whoami命令。

alias wmi='whoami'

不要忘记保存所做的修改,然后运行:

$source .bashrc 

现在,我可以使用wmi命令,终端将以whoami的身份运行它。

通常,可以通过添加以下语句来定义别名:

alias aliasname='commands'

这里值得一提的是,"别名"," ="和"命令"之间不应有空格。

别名也可以用于存储目录的冗长路径。

定制终端

有很多方法可以使用bashrc文件来自定义终端。

要更改提示符下显示的文本,请在文件末尾添加以下行:

PS1="theitroad> "

保存编辑并运行:

$source .bashrc

使用source命令刷新bashrc文件后,您的bash提示符将发生变化,如下图所示。

您还可以更改按UP箭头时显示的命令历史记录的限制。
为此,请更改bashrc文件中的HISTSIZE和HISTFILESIZE变量。

  • HISTSIZE是bash运行时存储在内存中的命令数。

  • HISTFILESIZE是光盘上存储的命令数。