Linux 添加chracter时,使用properties-prop的bash脚本为空

Linux 添加chracter时,使用properties-prop的bash脚本为空,linux,bash,shell,Linux,Bash,Shell,输入。属性: app_name=magic bash脚本:(test2.sh) 输出: [root@mymachine testdir]# ./test2.sh magic -abracadabra not-magic-abracadabra 第一个echo打印从道具文件中提取的单词“magic” 第二个echo只打印添加的字符串,而不打印name\u app value 第三个echo显示了将字符串添加到局部变量时的差异,它会按原样打印 我正在使用属性文件中的很多属性,但是当我尝试使用一

输入。属性:

app_name=magic
bash脚本:(test2.sh)

输出:

[root@mymachine testdir]# ./test2.sh 
magic
-abracadabra
not-magic-abracadabra
第一个echo打印从道具文件中提取的单词“magic” 第二个echo只打印添加的字符串,而不打印name\u app value 第三个echo显示了将字符串添加到局部变量时的差异,它会按原样打印

我正在使用属性文件中的很多属性,但是当我尝试使用一个将一些道具与一些文本一起使用的工具时,道具的值消失了

当我第一次使用解析器接收属性文件和属性名称作为输入并回显值时,也发生了同样的问题


为了得到道具,我使用了这个arser,但结果相同,我得到了值,但在更改字符串时它会出现。

输入。属性
包含DOS行结尾(
\r\n
)。
app\u name
的实际值为
magic\r
。尝试回显时,
\r
会使光标返回到行的开头,并且
-abracadabra
会覆盖初始部分。尝试
echo${app\u name}-hi
查看效果

如果您不能(或不想)编辑
input.properties
,可以使用

app_name=${app_name%$'\r'}

输入。属性
包含DOS行结尾(
\r\n
)。
app\u name
的实际值为
magic\r
。尝试回显时,
\r
会使光标返回到行的开头,并且
-abracadabra
会覆盖初始部分。尝试
echo${app\u name}-hi
查看效果

如果您不能(或不想)编辑
input.properties
,可以使用

app_name=${app_name%$'\r'}

#!/bin/bash。inputs.properties echo$app_name echo“${app_name}-abracadabra”app_name=“not magic”echo“${app_name}-abracadabra”#/bin/bash。inputs.properties echo$app_name echo“${app_name}-abracadabra”app_name=“not magic”echo“${app_name}-abracadabra”+1。很好,我应该马上考虑,但我没有。干得好@user2183505:您可以通过以下方式看到它:
/test2.sh|cat-ve
(-e在每行末尾添加“$”,而-v将不可打印的ascii字符显示为“^something”)+1。很好,我应该马上考虑,但我没有。干得好@user2183505:您可以通过以下方式看到它:
/test2.sh | cat-ve
(-e在每行末尾添加“$”,而-v将不可打印的ascii字符显示为“^something”)