【发布时间】:2016-08-17 03:08:53
【问题描述】:
我有一个将变量存储在 .txt 文件中以供以后使用的脚本。我想安全地从文件中检索这些变量。
我现在是如何设置的:
设置.txt
var1=value1
var2=value2
...
脚本
for i in $(cat Settings.txt); do $i done
# So now "var1" has the value "value1", and so on
这可行,但很危险,因为有人可能会通过该 txt 文件注入代码。
我知道source 命令,但这也有同样的问题。那么,如何安全地实现相同的功能呢?
【问题讨论】:
-
safely是什么意思?停止执行任何代码? -
@sobolevn 是的,我不希望任何代码会意外地从 txt 文件中执行。如果文件有
rm -fr /行,它会造成一些不必要的损害:/ -
@BonBon : 变量总是以
var开头吗? -
@sjsam 不,可以是任何带有大小写字符和“_”的变量名。该值可以是 1、0 或一些没有特殊字符的短字符串。
标签: bash parsing variable-assignment