Tôi có hai tập tin văn bản mount.txt
và mount2.txt
và tôi đã cố gắng để tách dòng mới (dòng mà không được ở mount.txt nhưng trong mount2.txt) từ dòng cũ (dòng mà là trong mount.txt nhưng đang không ở trong mount2.txt ). Tôi biết điều này phải có thể với một cái gì đó như:
fc mount.txt mount2.txt >out.txt
for /F "tokens=*" %%A in (out.txt) do (
::separate Line)
Đầu ra của lệnh fc trông như thế này:
Comparing files mount.txt and MOUNT2.txt
***** mount
ITCMDLogo
CBS
***** MOUNT2
Logo
ITCMDSecondLogo
CBS
*****
***** mount
MozillaPlugins
Acknowledgements
ReadMe\Palemoon-Portable-license.txt
***** MOUNT2
MozillaPlugins
ReadMe\Palemoon-Portable-license.txt
*****
Tôi khá khó hiểu về cách chính xác để thực hiện điều này, vì tôi vẫn còn rất nhiều người mới bắt đầu với for /f
các vòng lặp và setlocals
.
1
Tôi đã cho rằng tiêu đề của bạn bị nhầm lẫn và bạn có nghĩa là 'trong' chứ không phải 'là', đúng không? nếu không xin vui lòng sửa tiêu đề của bạn, bởi vì nó không có ý nghĩa.
—
barlop
Tôi không biết fc nhiều như vậy, và, tôi biết điều này có thể hơi không cần thiết nhưng nó có thể làm cho nó rõ ràng hơn một chút. Bạn có thể bao gồm nội dung của từng tập tin? (Tôi biết đầu ra fc của bạn có thể chỉ ra nội dung của từng tệp, nhưng sẽ rõ ràng hơn nếu bạn bao gồm nội dung của từng tệp trước lệnh fc)
—
barlop
Thay vì sử dụng fc
—
LotPings
findstr /V /I /B /E /G:mount.txt <mount2.txt
Chà, tôi đã thử nó với tệp này ở đây, và đã thử chỉ xóa một hoặc hai dòng và thêm một số ngẫu nhiên: 1drv.ms/t/s!AlRLV33Rdz2CgrgbGh5l2u5E4o6uYw (lưu ý rằng đầu ra sẽ khác với ví dụ của tôi. Đầu ra cho tập tin này sẽ có đường dẫn).
—
Đánh dấu