读取 .properties 文件以在 Expect shell 脚本中设置使用中的值和密码字段
Read .properties file to set value in use and password field in Expect shell script
如何在 shell 中从属性文件中读取用户和密码字段的值?
假设我 values.prop 文件的值如下所示,
user=abcd
pwd=xxxx
我想在我的 test.sh 中将上面的值设置如下
!/usr/bin/expect
set user "abcd"
set password "xxxx"
spawn ssh $user@$host
expect "$user@$hosts's password:"
send "$password\n"
如果您可以修改属性文件的格式,那么最简单的方法就是使用 source
functionality of tcl(期望脚本实际上是 tcl 脚本)。
!/usr/bin/expect
source values.prop
spawn ssh $user@$host
expect "$user@$hosts's password:"
send "$password\n"
values.prop
现在看起来像这样:
set user "abcd"
set password "xxxx"
这是一个粗略的 shell 脚本,它可以自动将属性文件转换为 tcl 文件
#!/bin/sh
. ""
printf 'set user "%s"\n' "$user"
printf 'set password "%s"\n' "$password"
这样使用:
translate ./values.prop > values.prop.tcl
然后 source values.prop.tcl
在你的 expect 脚本中。
如何在 shell 中从属性文件中读取用户和密码字段的值?
假设我 values.prop 文件的值如下所示,
user=abcd
pwd=xxxx
我想在我的 test.sh 中将上面的值设置如下
!/usr/bin/expect
set user "abcd"
set password "xxxx"
spawn ssh $user@$host
expect "$user@$hosts's password:"
send "$password\n"
如果您可以修改属性文件的格式,那么最简单的方法就是使用 source
functionality of tcl(期望脚本实际上是 tcl 脚本)。
!/usr/bin/expect
source values.prop
spawn ssh $user@$host
expect "$user@$hosts's password:"
send "$password\n"
values.prop
现在看起来像这样:
set user "abcd"
set password "xxxx"
这是一个粗略的 shell 脚本,它可以自动将属性文件转换为 tcl 文件
#!/bin/sh
. ""
printf 'set user "%s"\n' "$user"
printf 'set password "%s"\n' "$password"
这样使用:
translate ./values.prop > values.prop.tcl
然后 source values.prop.tcl
在你的 expect 脚本中。