Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有两个几乎相同的文件,相同数量的行,它是一个代码。我正在尝试创建这两个文件之间的公共行的文件,并且在行不同的地方也有空白行。我尝试使用comm,它工作得很好,但没有在坏行上提供我需要的空白行,它只是消除了这些行并且公共文件更短(行数)。
comm
这是我尝试过的:
comm -1 -2 file1 file2
comm需要排序的文件。因此,您可以像这样使用命令替换:
comm -12 <(sort file1) <(sort file2)
如果要跳过空行(空格),则:
comm -12 <(grep -Ev '^[ ]+$' file1 | sort) <(grep -Ev '^[ ]+$' file2 | sort)
要跳过包含空格或制表符的空行:
comm -12 <(grep -Ev $'^[ \t]+$' file1 | sort) <(grep -Ev $'^[ \t]+$' file2 | sort)