我正在使用LaTeX将csv文件转换为pdf。我的awk脚本看起来像这样:
BEGIN {printf "\\documentclass[a4paper,notitlepage]{report}\n" \
"\\usepackage[utf8]{inputenc}\n"\
"\\usepackage[francais]{babel}\n"\
"\\usepackage[T1]{fontenc}\n"\
"\\usepackage{hyperref}\n"\
"\\usepackage{textcomp}\n"\
"\\usepackage[left=1cm]{geometry}\n"\
..........
{print $1"\n" \
$2"\n" \
$3"\n" \
$4"\t"\
$5"\t" \
$6"\t" \
$7"\t" \
$8"\t" \
$9"\t" \
$10"\n""\\linebreak" \
......
$39"\t"\
$40;}
END {print "\\end{document}";}
我找到了各种各样的命令来删除命令行中的空行(awk'NF',awk'$ 0!〜/ ^ $ / {print $ 0}')并尝试将它们合并到脚本的末尾BEGIN和END语句的各种组合,但没有任何作用。
有人可以帮忙吗?非常感谢你提前...
答案 0 :(得分:0)
尝试在此行!/^$/
之前添加{print $1"\n" \
:
!/^$/ {print $1"\n" \
修改强>
这是另一种方法:
BEGIN {
...
}
!/^[[:blank:]]*$/ { # skip blank *input* lines
output = $1"\n" \
$2"\n" \
...
$40
# remove blank lines from *output*
# it also removes trailing whitespace from each line
gsub("([[:blank:]]*\n)+", "\n", output)
print output
}
END {
...
}