java 环境变量的值是否区分大小写?

i5desfxk  于 2023-02-14  发布在  Java
关注(0)|答案(3)|浏览(220)

我有一个从应用程序获取新记录并将其保存到本地数据库的作业,但是它看不到新记录。
我检查了作业及其属性,具体来说,environment.properties,它看起来像这样:
变量名称=变量值
变量的值没有引号。我想知道变量内的值是否区分大小写?因为作业从中获取新记录的应用程序具有大小写组合的值。

zpf6vheq

zpf6vheq1#

一般来说,环境变量的是保留大小写的。它们是否区分大小写,可能取决于操作系统和它们的使用方式。
使用环境变量的代码可能区分大小写,也可能不区分大小写。因此,问题的答案取决于使用环境变量的对象。一旦环境变量被赋予代码,并在任何特定语言中被转换为字符串类型,就完全取决于如何使用环境变量。
它是作为windows的文件路径使用的吗?那么它很可能是不区分大小写的(除非你在windows注册表中做了一些特殊的修改),仅仅因为windows的文件路径是不区分大小写的。它是用来和数据库交互的吗?然后问问自己数据库是不是区分大小写的。
如果你在shell脚本中比较两个环境变量(batch,bash或其他),这很可能取决于它是如何完成的。例如,批处理脚本中的IF默认是区分大小写的,除非有/I选项。
在linux上,一个很好的一般假设是,除非另有说明,否则所有字符都是大小写敏感的。

vcirk6k6

vcirk6k62#

“作业从中获取新记录的应用程序”必须更改字符串(前提是它从环境中获取输入)。环境变量与区分大小写无关-它们包含的正是您分配给它们的内容。

8yparm6h

8yparm6h3#

Linux非常区分大小写。
Windows是区分大小写的。我在研究这个问题时了解到这一点:
无法从boost::进程在Windows中设置%PATH
cmd.exe中,您可以执行以下操作:

SET PATH=%PATH%;C:/MyPath

这将把C:/MyPath附加到Path环境变量。
但是,如果您使用Microsoft的SetEnvironmentVariable来设置PATH,则实际上只需创建一个名为PATH的新环境变量,它独立于系统变量Path

相关问题