TL; DR
Cân nhắc sử dụng kết hợp paste
/ column
thay vì pr
để có kết quả phù hợp hơn.
Tùy thuộc vào hệ điều hành của bạn, pr
trộn không chính xác trong các cột khi độ dài đầu vào khác nhau (Ubuntu, macOS) hoặc thậm chí tệ hơn sẽ in mỗi đầu vào trên một trang hoàn toàn khác nhau (Centos 7)
pr
cả trả trước và nối thêm đầu ra
ĐỊNH DẠNG:
paste <(cmd1) <(cmd2) | column -s $'\t' -t
Giải thích chi tiết
Một giải pháp rất mạnh mẽ là có thể thông qua sự kết hợp của các lệnh paste
và column
.
Ưu điểm của paste
/ column
phương pháp tiếp cận pr
:
Đầu ra sạch hơn do không có dấu thời gian hoặc thông tin tiêu đề trang được thêm vào trước, cũng như toàn màn hình của các dòng trống được thêm vào
Các cột luôn ở riêng biệt ngay cả khi độ dài đầu vào khác nhau
Ví dụ cụ thể:
paste <(ls -1 .) <(ls -1 ..) | column -s $'\t' -t
Đầu ra paste
/ column
kỹ thuật thực tế trên Ubuntu 16.04:
jay-z@jaytaylor.com:~/go/src/github.com/jaytaylor/html2text
$ paste <(ls -1 .) <(ls -1 ..) | column -s $'\t' -t
LICENSE archiveify
README.md go-hostsfile
html2text.go html2text
html2text_test.go jaytaylor
testdata mockery-example
shipbuilder
stoppableListener
tesseract-web
Để so sánh: pr
trên các nền tảng khác nhau
TL; DR: pr
hành vi không nhất quán trên các hương vị Linux.
Đầu ra của pr
phiên bản trên Ubuntu :
jay-z@jaytaylor.com:~/go/src/github.com/jaytaylor/html2text
$ pr -m <(ls -1 .) <(ls -1 ..)
2017-05-25 15:50 /dev/fd/62 Page 1
LICENSE archiveify
README.md go-hostsfile
html2text.go html2text
html2text_test.go jaytaylor
testdata mockery-example
shipbuilder
stoppableListener
tesseract-web
Đầu ra của pr
phiên bản trên OS X / macOs :
jay-z@jaytaylor.com:~/go/src/github.com/jaytaylor/html2text
$ pr -m <(ls -1 .) <(ls -1 ..)
May 25 08:55 2017 Page 1
LICENSE archiveify
README.md go-hostsfile
html2text.go html2text
html2text_test.go jaytaylor
testdata mockery-example
shipbuilder
stoppableListener
tesseract-web
<... remainder of screen filled with blank lines ...>
Đầu ra của pr
phiên bản trên Centos :
(Đáng ngạc nhiên là hành vi của pr
Centos 7 khác với tất cả các nền tảng khác được thử nghiệm)
jay-z@jaytaylor.com:~/go/src/github.com/jaytaylor/html2text
$ pr <(ls -1 .) <(ls -1 ..)
2017-05-25 15:59 /dev/fd/63 Page 1
LICENSE
README.md
html2text.go
html2text_test.go
testdata
<... remainder of screen filled with blank lines ...>
2017-05-25 16:21 /dev/fd/62 Page 1
archiveify
go-hostsfile
html2text
jaytaylor
mockery-example
shipbuilder
stoppableListener
tesseract-web
<... remainder of screen filled with blank lines ...>
pr -m
người ta có thể sử dụngpaste
.