0

这个问题与帖子有关: 使用循环和 sed Bash 脚本在不同目录中的文件中设置变量值

我正在寻找一种方法来检查文件中的变量值并根据需要进行更新。要更改值,我执行以下操作:

#!/bin/bash

cd '/home/me/'
source server.properties
server_var="$server_name"
echo "$server_var"
echo "$application_name"
if [ "$server_var" != "server1" ]; then
    echo "Uncorrect Value"
    sed -i -e 's@server_name=$server_var@server_name=server1@g' server.properties
fi
cd '/home/test/'

感谢您的建议,现在我的 if 语句可以工作,但是该sed命令不会更新文件中的变量值。关于这个问题,你能指出我正确的方向吗?

谢谢,

4

1 回答 1

0
if [ -n "$server_name" ]
then
    sed ...
fi

顺便说一句,我认为您的set命令不能设置$server_name. 它将设置$1,$2等。

于 2013-04-08T21:48:07.663 回答