Bash 和环境变量

Bash 和环境变量

我有许多使用以下变量的 bash 脚本。将它们包含在环境变量中有意义吗?如果是这样,我该如何正确声明它们?

wht="$( tput bold; tput setaf 15 )"
grn="$( tput bold; tput setaf 34 )"
blu="$( tput bold; tput setaf 39 )"
ylw="$( tput bold; tput setaf 11 )"
red="$( tput bold; tput setaf 196 )"
amb="$( tput bold; tput setaf 214 )"

cyn="$( tput bold; tput setaf 51 )"
mgn="$( tput bold; tput setaf 201 )"

答案1

有两种方法可以实现,具体取决于您的实际使用情况。

  1. 将定义添加到您的脚本中~/.bashrc或使用这些定义调用脚本~/.bashrc。这对于您自己编写的任何脚本都很有用。即使您此时此地键入命令...作为一种变体,您可以将全局定义放入其中,/etc/bashrc系统上的任何用户都可以使用这些变量。当然,您需要添加export
export wht="$( tput bold; tput setaf 15 )"
export grn="$( tput bold; tput setaf 34 )"
...
  1. 将定义放入 a /usr/local/bin/colors.sh(确保它/usr/local/bin在您的$PATH)以及之后编写的任何脚本中 - 只需添加source colors.sh.在这种情况下,它colors.sh就像一个 shell 函数/定义库。当您为某些可以安装在不同计算机上的套件编写脚本时,此方法非常有用。

因此,首先决定如何以及在何处使用这些环境变量。它将为您提供存储它们的位置的答案。

相关内容