如何在shell中的2个文本文件中添加/删除/修改行

时间:2018-01-10 06:19:39

标签: shell

有2个文件 - 一个文件是jenkins中安装的插件文件

  cat plugins.txt
    jenkinsinstance|plugin1|version1|activestate
    jenkinsinstance|plugin3|version3.chage|activestate
    jenkinsinstance|new-plugin|new-version|new-state

,另一个是存储在db

中的值的文件
cat db.txt
jenkinsinstance|plugin1|version1|activestate
jenkinsinstance|plugin2|version2|activestate
jenkinsinstance|plugin3|version3|activestate

现在我必须比较这两个文件,并提出一个解决方案,显示已在jenkins实例中更改,添加和删除的插件 但不知何故,我坚持逻辑,不能找到一种方法继续前进 我尝试使用diffcomm工具,但他们没有给出正确的结果

diff -y --suppress-common-lines plugins.txt db.txt
jenkinsinstance|plugin3|version3.chage|activestate          |  jenkinsinstance|plugin2|version2|activestate
 jenkinsinstance|new-plugin|new-version|new-state              |  jenkinsinstance|plugin3|version3|activestate

 diff -u plugins.txt db.txt
--- plugins.txt 2018-01-09 22:35:50.965578496 -0600
+++ db.txt      2018-01-09 01:33:28.728664084 -0600
@@ -1,3 +1,3 @@
 jenkinsinstance|plugin1|version1|activestate
-jenkinsinstance|plugin3|version3.chage|activestate
-jenkinsinstance|new-plugin|new-version|new-state
+jenkinsinstance|plugin2|version2|activestate
+jenkinsinstance|plugin3|version3|activestate

这些无处提供有关添加/删除/修改的行的准确数据 有人可以帮助我吗

0 个答案:

没有答案