Notepad ++ So sánh hai tệp và xóa


12

Nói rằng tôi có hai tập tin. file1.txt và file2.txt

Cả hai tệp đều chứa danh sách tên nhãn hiệu giày (hơn 1000 tên), như thế này:

brand1 brand2 brand3 brand3 ...

Bây giờ - Tôi muốn so sánh tệp1 với tệp2, xóa tất cả các mục nhập lại và chỉ hiển thị cho tôi Whats trong tệp1 không có trong tệp2 và ngược lại.

Nói cách khác, mục tiêu là để xem những gì không có trong tệp đối diện vì các mục này sẽ được nhập thủ công vào một backoffice sản phẩm cho hai loại khác nhau để cuối cùng chúng sẽ khớp / giống nhau.


2
IMO điều này sẽ dễ thực hiện hơn trong Excel nếu bạn có thể sao chép tất cả dữ liệu của mình vào đó hoặc lưu TXT dưới dạng CSV. Nó có thể dễ dàng sắp xếp, loại bỏ trùng lặp và tôi chắc chắn việc so sánh cột sẽ không khó thực hiện.
Karan

Liên kết sau có thể hữu ích: superuser.com/a/290445
akjain

Câu trả lời:


7

Plugin "So sánh" của Notepad ++ sẽ thực hiện thủ thuật?

Bạn có thể cài đặt nó từ menu của các plugin Notepad ++ => Trình quản lý plugin => So sánh 1.5.6

Đây là mô tả chính thức: Một plugin khác rất hữu ích để hiển thị sự khác biệt giữa 2 tệp (cạnh nhau). Tác giả: Ty Landercasper, hiện được Jean-Sebastien Leroy duy trì và cập nhật Nguồn: http://sourceforge.net/projects/npp-plugins/files/ComparePlugin/Compare_1_5_5_src.zip/doad


2
Thật không may, tôi không nghĩ rằng nó làm. Plugin So sánh chỉ làm nổi bật sự khác biệt giữa hai tệp, nhưng không cung cấp công cụ nào để thực hiện lựa chọn hoặc chỉnh sửa dựa trên kết quả của nó. Mặc dù chắc chắn hữu ích, tôi e rằng nhiệm vụ vẫn còn rất tẻ nhạt đối với hơn một nghìn tên thương hiệu.
Marcks Thomas

3

Một câu hỏi cũ, nhưng ...

  1. So sánh các tệp trong WinMerge
  2. Công cụ -> Tạo Patch (lưu cái này)
  3. Các bản vá có thay đổi từ cả hai, nhưng cũng đánh dấu thêm. Trong notepad ++, hãy thực hiện các thay thế sau:

        Search Mode:  Regular Expression
        Find What:    ^[0-9-].*$
        Replace With: <blank>
        Replace All
    

    .

        Search Mode:  Regular Expression
        Find What:    (<|>)
        Replace With: <blank>
        Replace All
    
  4. Sử dụng plugin TextFX trong notepad ++ để thực hiện Công cụ-> sắp xếp không phân biệt chữ hoa chữ thường (tùy chọn đầu ra UNIQUE được chọn) hoặc Chỉnh sửa-> Xóa các dòng trống

Bit mungy, nhưng tôi chưa tìm thấy một công cụ sẽ làm điều này trong một cú nhấp chuột.


0

Nếu Unix có sẵn cho bạn, bạn có thể thử các tổ hợp lệnh đơn giản này; tr, sắp xếp và comm.

Đầu tiên, chuyển đổi tệp từ tách theo chiều ngang sang tách theo chiều dọc:

tr '[:blank:]' '\n' < file1.txt > /tmp/file1.vertical
tr '[:blank:]' '\n' < file2.txt > /tmp/file2.vertical

Sau đó sắp xếp các tệp:

sort /tmp/file1.vertical > /tmp/file1.sorted
sort /tmp/file2.vertical > /tmp/file2.sorted

Bây giờ bạn có thể thấy những gì trong tệp1 không có trong tệp2

comm -23 /tmp/file1.sorted /tmp/file2.sorted

Hoặc xem những gì trong tệp2 không có trong tệp1

comm -13 /tmp/file1.sorted /tmp/file2.sorted

Nếu bạn muốn đầu ra ở cùng định dạng ngang mà bạn đã bắt đầu, bạn có thể làm điều này:

comm -23 /tmp/file1.sorted /tmp/file2.sorted | tr '\n' ' '
comm -13 /tmp/file1.sorted /tmp/file2.sorted | tr '\n' ' '

Khi bạn hoàn tất, bạn có thể xóa các tệp tạm thời bạn đã tạo:

rm /tmp/file1.vertical /tmp/file2.vertical /tmp/file1.sorted /tmp/file2.sorted
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.