我想创建一个shell脚本来更改我的文件中使用命令行的'='之后的字符串值。文件就像:
String name = "Max";
String age = "24";
String address = "Noida";
要么
String name=Max
String age=24
String address=Noida
但在这里,我不想进行字符串比较,像这样:
$ sed -i 's/Max/Aman/gI' String.txt
$ sed -i 's/24/25/gI' String.txt
$ sed -i 's/Noida/Delhi/gI' String.txt
请建议如何使用命令行在文件中更改字符串值而不进行字符串比较。
你可以使用这个单个sed
,它不会在替换新值时检查以前的值:
sed '/name = /s/"[^"]*"/"AMAN"/; /age = /s/"[^"]*"/"25"/; /address = /s/"[^"]*"/"Delhi"/;' String.txt
String name = "AMAN";
String age = "25";
String address = "Delhi";