使用 awk 保留除最后一个之外的所有换行符

使用 awk 保留除最后一个之外的所有换行符

如何修改下面的这一行以捕获两行之间的内容而无需尾随换行符?

interesting="$(awk "NR >= $first_line && NR <= $second_line" $file_path | base64 -w 0)"

我不确定是否应该使用 awk、bash 或其他一些 UNIX 工具来完成此操作?

答案1

你可以这样做:

< "$file_path" awk -v x="$first_line" -v y="$second_line" '
  NR == x {printf "%s", $0; next}
  NR > x && NR <= y {printf "%s", ORS $0}' |
  base64 -w0

相关内容