ฉันมี "test1.csv" และมันมี
200,400,600,800
100,300,500,700
50,25,125,310
และ test2.csv และประกอบด้วย
100,4,2,1,7
200,400,600,800
21,22,23,24,25
50,25,125,310
50,25,700,5
ตอนนี้
diff test2.csv test1.csv > result.csv
แตกต่างจาก
diff test1.csv test2.csv > result.csv
ฉันไม่รู้ว่าคำสั่งใดถูกต้อง แต่ฉันต้องการอย่างอื่นทั้งสองคำสั่งด้านบนจะแสดงผลลัพธ์ออกมาเหมือนกัน
2 > 100,4,2,1,7
3 2,3c3,5
4 < 100,300,500,700
5 < 50,25,125,310
6 \ No newline at end of file
7 ---
8 > 21,22,23,24,25
9 > 50,25,125,310
ฉันต้องการส่งออกเฉพาะความแตกต่างดังนั้น results.csv ควรมีลักษณะเช่นนี้
100,300,500,700
100,4,2,1,7
21,22,23,24,25
50,25,700,5
ฉันลองdiff -q
แล้วdiff -s
แต่พวกเขาไม่ได้ทำเคล็ดลับ การสั่งซื้อไม่สำคัญสิ่งที่สำคัญคือฉันต้องการเห็นความแตกต่างเท่านั้นไม่มี> หรือ <หรือพื้นที่ว่างเปล่า
grep -FvF
ทำเคล็ดลับในไฟล์เล็ก ๆ ไม่ใช่ไฟล์ใหญ่
ไฟล์แรกมีมากกว่า 5 ล้านบรรทัดไฟล์ที่สองมี 1300
ดังนั้น results.csv ควรส่งผลให้ ~ 4,998,700 บรรทัด
ฉันลองgrep -F -x -v -f
ซึ่งไม่ได้ผล
50,25,125,310
เป็นเรื่องปกติสำหรับไฟล์ทั้งสองไฟล์ .. คุณจำเป็นต้องลบไฟล์นั้นออกจากเอาต์พุตที่คุณต้องการ ..