Chia tập tin văn bản thành các dòng ngắn để đọc?


10

Có một chương trình có thể lấy một tệp văn bản đơn giản với các dòng dài và thêm một dòng mới sau một số ký tự nhất định, chỉ phân tách tại các từ, để làm cho nó có thể đọc được? Ví dụ: lấy cái này:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam vel lectus ac enim venenatis porttitor in et est. Curabitur ut eros quis risus consequat dictum a a lectus. Integer ut risus quis augue lobortis molestie vel id nibh. Aliquam sit amet mattis lorem, vel ornare felis. Donec pulvinar tempus lorem, at porta sem pretium ut. Cras ut lorem tincidunt, scelerisque nunc vitae, posuere augue. Vestibulum iaculis libero id congue ultrices. Nullam mauris ipsum, aliquet eget nisl non, venenatis euismod enim. Phasellus a eleifend velit. Aenean molestie venenatis turpis, consectetur convallis velit fringilla non.

Và biến nó thành thế này:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam vel
lectus ac enim venenatis porttitor in et est. Curabitur ut eros quis
risus consequat dictum a a lectus. Integer ut risus quis augue lobortis
molestie vel id nibh. Aliquam sit amet mattis lorem, vel ornare felis.
Donec pulvinar tempus lorem, at porta sem pretium ut. Cras ut lorem
tincidunt, scelerisque nunc vitae, posuere augue. Vestibulum iaculis
libero id congue ultrices. Nullam mauris ipsum, aliquet eget nisl non,
venenatis euismod enim. Phasellus a eleifend velit. Aenean molestie
venenatis turpis, consectetur convallis velit fringilla non.

Câu trả lời:


16

Lệnh tôi nghĩ bạn đang tìm kiếm được gọi fmt.

$ fmt loremipsum.txt
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam vel
lectus ac enim venenatis porttitor in et est. Curabitur ut eros quis risus
consequat dictum a a lectus. Integer ut risus quis augue lobortis molestie
vel id nibh. Aliquam sit amet mattis lorem, vel ornare felis. Donec
pulvinar tempus lorem, at porta sem pretium ut. Cras ut lorem tincidunt,
scelerisque nunc vitae, posuere augue. Vestibulum iaculis libero id congue
ultrices. Nullam mauris ipsum, aliquet eget nisl non, venenatis euismod
enim. Phasellus a eleifend velit. Aenean molestie venenatis turpis,
consectetur convallis velit fringilla non.

Bạn có thể kiểm soát kết quả, chẳng hạn như chiều rộng, v.v.

$ fmt --help
Usage: fmt [-WIDTH] [OPTION]... [FILE]...
Reformat each paragraph in the FILE(s), writing to standard output.
The option -WIDTH is an abbreviated form of --width=DIGITS.

Mandatory arguments to long options are mandatory for short options too.
  -c, --crown-margin        preserve indentation of first two lines
  -p, --prefix=STRING       reformat only lines beginning with STRING,
                              reattaching the prefix to reformatted lines
  -s, --split-only          split long lines, but do not refill
  -t, --tagged-paragraph    indentation of first line different from second
  -u, --uniform-spacing     one space between words, two after sentences
  -w, --width=WIDTH         maximum line width (default of 75 columns)
      --help     display this help and exit
      --version  output version information and exit

With no FILE, or when FILE is -, read standard input.

5

Có lẽ sự lựa chọn tốt nhất sẽ là một trình soạn thảo văn bản; hầu hết trong số họ cung cấp gói văn bản của một số loại.

Nếu bạn đang tìm kiếm thứ gì đó đơn giản hơn, bạn có thể tìm ra thứ gì đó bằng cách sử dụng sedhoặc tương tự. Đặt hàng dài của bạn vào một loremipsum.txtvà để sedbọc sau 56-73 ký tự theo sau là khoảng trắng, nó mang lại kết quả mong muốn của bạn ...

$ sed -r -e 's/.{56,73} /&\n/g' loremipsum.txt
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam vel 
lectus ac enim venenatis porttitor in et est. Curabitur ut eros quis 
risus consequat dictum a a lectus. Integer ut risus quis augue lobortis 
molestie vel id nibh. Aliquam sit amet mattis lorem, vel ornare felis. 
Donec pulvinar tempus lorem, at porta sem pretium ut. Cras ut lorem 
tincidunt, scelerisque nunc vitae, posuere augue. Vestibulum iaculis 
libero id congue ultrices. Nullam mauris ipsum, aliquet eget nisl non, 
venenatis euismod enim. Phasellus a eleifend velit. Aenean molestie 
venenatis turpis, consectetur convallis velit fringilla non.

... hoặc bạn có thể sử dụng fold -s -w 74 loremipsum.txttôi đoán ...


3

Bạn có thể dẫn văn bản của bạn vào fold -s -w 72để có được kết quả đó.

Nếu hệ thống của bạn không có foldnhưng đã cài đặt python, bạn có thể làm:

cat /var/tmp/li.txt | cat /var/tmp/li.txt | python -c "import sys; from textwrap import fill; print fill(sys.stdin.read(), width=72)"
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.