比如a文件中有:
100 200 300
b文件中有:
This is 100. That is 200. Hello 400.
想取出b文件中符合条件的这两条:
This is 100. That is 200.
单从linux文件操作的角度有好的实现方法吗?
grep -f a b 명령을 실행한 다음 awk를 사용하면 이렇게 할 수 있습니다awk 'NR==FNR{x[
grep -f a b
awk 'NR==FNR{x[
두 파일의 동일한 데이터를 비교하려면 comm 명령을 사용하면 됩니다. 특정 데이터가 포함된 행을 찾아야 하는 경우에도 먼저 파일 A에서 데이터를 추출해야 합니다. 예를 들어 A는 100, 200, 300인 경우 egrep '[1-3]00'을 사용할 수 있습니다. b 그래서 결과가 나온다. 그러나 좀 더 복잡한 파일 비교의 경우에는 여전히 셸, awk 또는 Python을 사용하여 처리하는 것이 좋습니다.
];next}{for(i in x)if(~i)print}' a bgrep -f a b
명령을 실행한 다음awk를 사용하면 이렇게 할 수 있습니다
awk 'NR==FNR{x[
두 파일의 동일한 데이터를 비교하려면 comm 명령을 사용하면 됩니다.
특정 데이터가 포함된 행을 찾아야 하는 경우에도 먼저 파일 A에서 데이터를 추출해야 합니다. 예를 들어 A는 100, 200, 300인 경우 egrep '[1-3]00'을 사용할 수 있습니다. b 그래서 결과가 나온다.
그러나 좀 더 복잡한 파일 비교의 경우에는 여전히 셸, awk 또는 Python을 사용하여 처리하는 것이 좋습니다.