TL; DR
ลองใช้การรวมกันของpaste
/ column
แทนที่จะpr
ได้รับผลลัพธ์ที่สอดคล้องกันมากขึ้น
ขึ้นอยู่กับระบบปฏิบัติการของคุณpr
ผสมในคอลัมน์อย่างไม่ถูกต้องเมื่อความยาวของอินพุตแตกต่างกัน (Ubuntu, macOS) หรือแย่กว่านั้นจะพิมพ์แต่ละอินพุตบนหน้าแตกต่างกันโดยสิ้นเชิง (Centos 7)
pr
ทั้ง prepends และผนวกเอาต์พุตภายนอก
รูปแบบ:
paste <(cmd1) <(cmd2) | column -s $'\t' -t
คำอธิบายโดยละเอียด
โซลูชันที่มีประสิทธิภาพสูงสามารถทำได้ผ่านการรวมกันของคำสั่ง paste
และcolumn
ข้อดีของการpaste
/ column
วิธีการมากกว่าpr
:
ตัวอย่างคอนกรีต:
paste <(ls -1 .) <(ls -1 ..) | column -s $'\t' -t
ผลลัพธ์paste
/ column
เทคนิคในชีวิตจริงบน 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
สำหรับการเปรียบเทียบ: pr
บนแพลตฟอร์มต่างๆ
TL; DR: pr
พฤติกรรมไม่สอดคล้องกับรสชาติของ Linux
ผลลัพธ์ของpr
รุ่นบน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
เอาท์พุทของpr
รุ่นบน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 ...>
ผลลัพธ์ของpr
รุ่นบนCentos :
(น่าแปลกที่พฤติกรรมของpr
Under Centos 7 แตกต่างจากแพลตฟอร์มอื่น ๆ ที่ทดสอบ)
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
paste