I need to compare two csv files in windows7. How can I proceed to achieve this. I want to see the differences in both the files , like we can use tkdiff in Linux.
Suggestion:
cmd and press Enter to open a cd C:\path\to\your\directory to reach the location of the two CSV files Tip: To paste a copied path from clipboard into DOS terminal cmd window, you can either (1) right-click on terminal window, or (2) press Shift+Insert.
fc filename1.csv filename2.csv > outfile.txt (fc stands for "file compare").outfile.txt located in the same folder. If outfile.txt doesn't exist, it will be created automatically.I did this today.
Lets say we have 2 csv files X and Y
X having columns a, b, c
Y having column a, b, c
The rows are not in same order and are disperesed througout the csv files.
I imported both of them in my excel sheet. I sorted them first by column c and then by column b and then by column a. You can go in any order you like.
Compare the sorted files through notepad++'s compare plugin/Beyond Compare.
Here is another option which I found very useful, as mentioned here:
findstr /v /g:"file1.csv" "file2.csv"
Where the /v switch returns the differences and /g: gets the search strings from file1.csv. You can use findstr /? for more help.
You can also print the differences to a file using:
findstr /v /g:"file1.csv" "file2.csv > diffs.csv"
As an aside, I found findstr far more accurate and the output more readable than fc.
UPDATE
This works nicely with 'smaller' files. You might get an out of memory error on larger files. In this case, I've had to turn to Python and dataframes. Just a friendly heads up ...