it-swarm-vi.tech

unix diff kết quả phụ?

Làm thế nào tôi có thể vẽ kết quả của một lệnh unix diff-side-side thay vì một sự khác biệt sau khi khác? Xem ví dụ bên dưới: 

    diff /tmp/test1  /tmp/test2
1,4c1,2
< asfdsadf
< asdfsad
< fsaf
< fdsadf
---
> asdfsafdsf
> saf
6,8d3
< sadf
< asdf
< sadf
10d4
< fasd
12,13c6,14
< sadfa
< fd
---
> sadf
> sadf
> sadf
> sadf
> sadf
> sadf
> sadf
> sadf
> safa

Tôi muốn có một cái gì đó như:

diff /tmp/test1  /tmp/test2
1,4c1,2
< asfdsadf       > asdfsafdsf
< asdfsad        > saf       
< fsaf
< fdsadf
---
6,8d3
< sadf
< asdf
< sadf
10d4
< fasd
12,13c6,14
< sadfa               > sadf
< fd              > sadf
---               > sadf
              > sadf
              > sadf
              > sadf
              > sadf
              > sadf
              > safa
74
719016

Từ man diff, bạn có thể sử dụng -y để thực hiện song song.

-y, --side-by-side
       output in two columns

Do đó, nói:

diff -y /tmp/test1  /tmp/test2

Kiểm tra

$ cat a                $ cat b
hello                  hello
my name                my name
is me                  is you

Hãy so sánh chúng:

$ diff -y a b
hello                                                           hello
my name                                                         my name
is me                                                         | is you
114
fedorqui

Từ trang chủ của icdiff :

enter image description here

Thiết bị đầu cuối của bạn có thể hiển thị màu sắc, nhưng hầu hết các công cụ khác không sử dụng tốt. Bằng cách làm nổi bật các thay đổi, icdiff có thể cho bạn thấy sự khác biệt giữa các tệp tương tự mà không bị cản trở. Điều này đặc biệt hữu ích để xác định và hiểu những thay đổi nhỏ trong các dòng hiện có.

Thay vì cố gắng trở thành một sự thay thế khác nhau cho mọi hoàn cảnh, mục tiêu của icdiff là trở thành một công cụ bạn có thể tiếp cận để có được bức tranh tốt hơn về những gì đã thay đổi khi nó không rõ ràng ngay lập tức từ diff.

IMHO, đầu ra của nó dễ đọc hơn nhiều so với diff -y.

26
timmfin

Bạn nên có sdiff để hợp nhất các tệp khác nhau. Hãy đọc man sdiff cho toàn bộ câu chuyện. 

8
Chris Seymour

Bạn có thể dùng:

sdiff  file1 file2

hoặc là 

diff -y file1 file2

hoặc là

vimdiff file1 file2

cho màn hình bên cạnh.

8
srpatcha

Bạn chỉ có thể sử dụng:

diff -y fileA.txt fileB.txt | colordiff

Nó cho thấy đầu ra được chia thành hai cột và tô màu! (colordiff)

6

Sử dụng tùy chọn -y:

diff -y file1 file2
4
rectummelancolique

Hãy thử cdiff - Xem màu, khác biệt tăng dần trong không gian làm việc hoặc từ stdin với sự hỗ trợ của máy nhắn tin tự động.

4
ymattw

Bạn có thể sử dụng vimdiff.

Thí dụ:

vimdiff file1 file2
2
Eduardo Cuomo
diff -y --suppress-common-lines file1 file2
2
Rjazhenka

Nếu các tệp của bạn sử dụng các khoảng trắng và tab không nhất quán, bạn có thể thấy hữu ích khi đưa đối số -t để mở rộng các tab:

diff -ty file1 file2
0
Bucket