linux - 替换外部 bash 脚本中的特定变量

标签 linux bash shell variables

我是编码新手,已经在 stackoverflow 上找到了一些与此相关的主题,但无法让它发挥作用,因为它们对我来说似乎过于扩展了。我可能需要一些指导。

我需要更改外部 bash 脚本“comlink.conf”中的一些变量。但仅限于特定的。其他人应该保持原样。

ready=0
test=1
new=2

echo 'ready='$ready > comlink.conf
sleep 10

ready=1

echo 'ready='$ready > comlink.conf

如果我那样做,“test=1”和“new=2”将被完全覆盖并从文件中消失。那不应该发生。

最简单的方法是什么?

最佳答案

您可以使用 sed 进行不同的替换,例如:

sed 's/ready=.*/ready=1/' comlink.conf > tmp
mv tmp comlink.conf

或者如果您使用的是 GNU sed:

sed -i 's/ready=.*/ready=1/' comlink.conf

或 BSD sed:

sed -i'' 's/ready=.*/ready=1/' comlink.conf

关于linux - 替换外部 bash 脚本中的特定变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45634481/

相关文章:

Bash 脚本和/bin/bash^M : bad interpreter: No such file or directory

linux - 对包含域名的输入文件执行质量扫描

c - 如何定义系统()

linux - 从具有多个单词的文件名创建目录

linux - Socket编程send()返回值

linux - 在 Linux 终端/Putty 中改变一个字的颜色?

linux - KornShell 脚本中的 if 语句

java - Cassandra 2.0 及更高版本需要 Java 7u25 或更高版本,但我使用的是 8u60

linux - 显示套接字选项

linux - 列出第二个字母为 'c' 的文件 (Linux)