我希望有一个带有标签的列和一个带有较长文本的第二列,其中包含换行符,如表格所示。
#title
我试过了:
Label Text: Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed
diam nonumy eirmod tempor invidunt ut labore et dolore magna
aliquyam erat, sed diam voluptua. At vero eos et accusam et
justo duo dolores et ea rebum. Stet clita kasd gubergren, no
sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem
ipsum dolor sit amet, consetetur sadipscing elitr, sed diam.
非常感谢你!
答案 0 :(得分:2)
groff
包的一部分。这是一个例子:
(echo -e '.na\n.nh'
cat label.txt
echo "'in \\w' $(<label.txt)'u"
cat long.txt ) |
nroff | sed '/^$/d'
Nroff命令以行首开头.
或'
开头。
.na
停止对齐,.nh
停止连字,'in
设置缩进
到字符串的宽度(\w'...'
),sed用于删除尾随空白行。
您可以使用.ll 80
设置线宽,例如80列。
万岁![/ p>
Label Text: Lorem ipsum dolor sit amet, consetetur sadipscing
elitr, sed diam nonumy eirmod tempor invidunt ut
labore et dolore magna aliquyam erat, sed diam
voluptua. At vero eos et accusam et justo duo dolores
et ea rebum. Stet clita kasd gubergren, no sea
takimata sanctus est Lorem ipsum dolor sit amet.
Lorem ipsum dolor sit amet, consetetur sadipscing
elitr, sed diam.
答案 1 :(得分:1)
以下bash脚本可能会对您有所帮助:
<强> padded-paste.sh 强>:
#!/bin/bash
label=$1
text=$2
# get the number of lines in the text
nline=$(wc -l ${text} | cut -f 1 -d' ')
# get the width of the label
padding=$(awk 'NR==1{ print length }' ${label})
# create a temp directory
tmpdir=$(mktemp -dt "$(basename $0).XXXXXXXXXX")
templabel=${tmpdir}/label.tmp
# print the first line of the label file to a temp file:
awk 'NR==1{ print }' ${label} > ${templabel}
# add blank padding to the temp label file:
for i in $(seq 2 $nline); do
printf "%*s\n" $padding "" >> ${templabel}
done
# pasted the padded lable to the long text
paste -d' ' ${templabel} ${text}
基于以下输入: 的 label.txt 强>:
Label Text:
<强> long.txt 强>:
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy
eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam
voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet
clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit
amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam.
您可以像以下一样使用它:
sh padded-paste.sh label.txt long.txt
它会输出:
Label Text: Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy
eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam
voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet
clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit
amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam.