【发布时间】:2011-01-22 22:50:23
【问题描述】:
我在 windows 上使用 perl,并尝试使用 perl 来替换文件中的占位符,该文件使用包含美元符号的 windows 变量。有谁知道正确的用法是使它与美元符号一起使用。我尝试了各种方法,但似乎无法使其正常工作。
例如,我有一个属性文件,其中包含一个令牌(!MYPASSWORD!),我试图替换它:
somevalue="!MYPASSWORD!"
我有一个批处理文件,它查找一个名为 NEWPASSWORD 的变量,其中包含密码 $abc12345$,我想使用 perl 替换来替换该值,如下所示。请注意,我可能并不总是知道 $ 符号在哪里,所以我无法逃脱它们。例如另一个密码可能是 abc$124$563:
echo %NEWPASSWORD% <-- this would contain $abc12345$
perl -p -i.bak -e "s/!MYPASSWORD!/%NEWPASSWORD%/g" a.properties
完成后,我希望 a.properties 成为:
somevalue="$abc12345$"
提前致谢
【问题讨论】:
-
我看不出您的实际问题是什么?你能举一个不工作的例子以及你想让它做什么吗?即提供代码。
-
以下是代码: echo %NEWPASSWORD%