在刚入职进行测评作业的时候,很多小朋友有这样一个问题:我明明是按照作业指导书上的命令敲的啊,为什么没反应,运行不了啊?客户告诉我mysql 数据库就是在这台服务器上啊,我的命令为什么没用?
![网络安全基础扫盲篇之环境变量 网络安全基础扫盲篇之环境变量]()
这就涉及到一个叫“环境变量”的东西。
假设你是一名学生,每天上学需要乘坐公交车。在你的钱包里有一张公交卡,它存储了你的个人信息和余额。这张卡就可以类比为环境变量。
公交卡上的个人信息如姓名、身份证号等就相当于环境变量存储的配置信息。而卡上的余额就相当于环境变量存储的数值信息。
当你需要乘坐公交车时,你只需要刷一下公交卡,系统就能读取卡上的信息,例如你的姓名和余额。公交车上的系统会根据你的余额信息判断是否可以扣费,以及扣费的金额。这就类似于程序在运行时读取环境变量的值来进行相应的操作。
export ORACLE_BASE=/data/oracle
export ORACLE_HOME=/data/oracle/product/11.2.0/db_1
$ORACLE_BASE 代表了oracle数据库的安装目录,$ORACLE_HOME代表了oracle数据库的家目录
PS:在Linux操作系统中,使用$符号来引用环境变量的值。
通过使用$符号引用环境变量的值,可以方便地在脚本、命令或配置文件中引用和使用环境变量,从而实现灵活的配置和定制。
那么与我们最开始说的未找到命令有什么关联呢?
原来在当你运行一个可执行文件时,操作系统需要知道该文件所在的位置。为了方便,在操作系统中,可以使用环境变量来告诉系统可执行文件所在的目录。
其中一种常见的环境变量是PATH,它是一个包含多个目录路径的变量。当你输入一个命令时,系统会在PATH中的每个目录中依次查找这个命令对应的可执行文件。如果找到了匹配的可执行文件,系统就会执行它。
举个例子,假设你将/usr/local/bin目录添加到了PATH中。现在,你可以在命令行中直接输入可执行文件的名称,而不需要写完整的路径。系统会自动在/usr/local/bin中查找这个可执行文件并执行它。这样做的好处是,在任意位置都可以方便地执行可执行文件,而不用关心它们的具体路径。你只需要把这些文件所在的目录添加到PATH中就可以了。
例如我们最开始直接使用mysql 命令的时候会提示未找到命令,此时我们在/etc/profile文件中加入如下配置
![网络安全基础扫盲篇之环境变量 网络安全基础扫盲篇之环境变量]()
目的是让mysql/bin目录下的可执行文件可在任意目录执行
此时我们回到家目录,发现能正确的执行mysql 命令了
在Linux系统中,可以通过修改~/.bashrc或~/.bash_profile文件来配置PATH。这两个文件分别用于配置用户的环境变量和启动bash时需要执行的命令。另外/etc/profile文件是系统范围内所有用户的bash配置文件,修改这个文件可以影响到整个系统的环境变量设置。
首先,我们打开~/.bashrc或~/.bash_profile文件,可以使用文本编辑器如vim或nano进行编辑。然后,找到文件中类似于以下的行:
export PATH=$PATH:/your/additional/path1:/your/additional/path2
在这行中,$PATH表示原来的PATH变量的值。你可以在这行的末尾加上:/your/additional/path1:/your/additional/path2来添加你需要的额外路径。每个路径之间使用冒号分隔。
举例来说,如果你希望将/usr/local/bin目录添加到PATH中,可以这样修改:
export PATH=$PATH:/usr/local/bin
在修改完成后,保存文件并退出文本编辑器。然后,在命令行中输入以下命令使修改生效:
source ~/.bashrc 或者 source ~/.bash_profile
这样就完成了PATH的配置。现在你可以在任意位置运行/usr/local/bin目录下的可执行文件了。
另外在Windows操作系统中,我们通过图形界面或者命令行来设置环境变量PATH。通过图形界面设置PATH可以按照以下步骤进行:
4. 在“系统变量”或“用户变量”中找到PATH变量,然后点击“编辑”按钮。
5. 在弹出的窗口中,你可以添加或者编辑PATH变量的值,添加你需要的额外路径,每个路径之间使用分号分隔。
6. 确认保存所做的更改,然后关闭所有窗口。
![网络安全基础扫盲篇之环境变量 网络安全基础扫盲篇之环境变量]()
![网络安全基础扫盲篇之环境变量 网络安全基础扫盲篇之环境变量]()
![网络安全基础扫盲篇之环境变量 网络安全基础扫盲篇之环境变量]()
原文始发于微信公众号(等保不好做啊):网络安全基础扫盲篇之环境变量
评论