如何解决如何在 ed 中使用 diff3
如何将 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
解决方法
(最初我将其发布在 comment above 中。没有人添加任何进一步的上下文,但问题已解决,因此我也将其添加为答案)
似乎 diff3
输出错过了 w
ed
命令。因此,要获得预期的输出,应该(diff3 -E $f1 $f2 $f3; echo w) | ed $f1
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。