我有一个要求,我需要更改文件的内容,比如 xyz.cfg。该文件包含如下值:
group address=127.8.8.8
port=7845
Jboss username=xyz_ITR3
我想在需要时通过 shell 脚本更改此内容并保存文件。更改后的内容可能如下所示:
group address=127.8.7.7
port=7822
Jboss username=xyz_ITR4
如何使用 shell 脚本通过获取用户输入或其他方式实现此目的?
最佳答案
怎么样:
#!/bin/bash
addr=$1
port=$2
user=$3
sed -i -e "s/\(address=\).*/\1$1/" \
-e "s/\(port=\).*/\1$2/" \
-e "s/\(username=\).*/\1$3/" xyz.cfg
其中 $1,$2
和 $3
是传递给脚本的参数。将其保存为 script.sh
之类的文件,并使用 chmod +x script.sh
确保它可执行,然后您可以像这样运行它:
$ ./script.sh 127.8.7.7 7822 xyz_ITR4
$ cat xyz.cfg
group address=127.8.7.7
port=7822
Jboss username=xyz_ITR4
这为您提供了基本结构,但是您想考虑验证输入等。
关于linux - 通过shell脚本更改文件内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14643531/