如何diff3
搭配使用ed
?我在下面的尝试与输出不匹配diff3 --merge
,所以我一定做错了什么。
背景:我已经移植了 OpenBSD 的diff3prog.c实用程序以在 BusyBox 中使用,它具有diff
和ed
.
cat <<- EOF > parent.txt
1
2
3
EOF
cat <<- EOF > ours.txt
1
2
3
EOF
cat <<- EOF > theirs.txt
1
2
3
4
EOF
f1=ours.txt
f2=parent.txt
f3=theirs.txt
diff3 --merge $f1 $f2 $f3 > merged_good.txt
diff3 -E $f1 $f2 $f3 | ed $f1
#prints:
#6
#?
mv $f1 merged_bad.txt
cat merged_good.txt
#prints:
#1
#2
#3
#4
cat merged_bad.txt
#prints:
#1
#2
#3