Сохраняем все переносы строк, кроме последнего, используя 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

Связанный контент