bash shell 脚本如何将字符串写入到文件中?

如:文件夹下有两个文件 文件1.txt和2.txt, 文件1.txt中有一个唯一的字符串为:MY NAME=刘德华 (没有空格) 文件2.txt中有一个唯一字符串:name 梁朝伟 中间有空格 如何写一个脚本文件build.sh,读取文件2.txt中的字符串 “梁朝伟”,并将“梁朝伟”替换掉 文件1.txt中的字符串“刘德华”。 求大神指教
最新回答
始终一个人

2024-04-11 09:50:30

刚学完新书《实用Linux
Shell编程》,写的不错,容易懂,网上和书店都有卖。
现在试着回答,仅供参考,谢谢。
1)先保证文件内容正确:
$
cat
1.txt
MYNAME=Liu_Dehua
$
cat
2.txt
name
Liang_Chaowei
2)文件1文件2只有唯一字符串,所以情况相对简单。脚本写好了,别忘了给脚本增加执行权限
$
cat
build.sh
#!/bin/bash
str1=$(cat
1.txt)
echo
${str1%%=*}=$(cat
2.txt
|
awk
'{print
$2}')
|
tee
1_new.txt
3)运行脚本:
$
./build.sh
MYNAME=Liang_Chaowei
然后看看新产生的文件,Liang_Chaowei替换了文件1中的Liu_Dehua
$
cat
1_new.txt
MYNAME=Liang_Chaowei
以上在都上机通过了。仅供参考,谢谢。