how can i split a variable with text content by every empty line? Maybe into an array or something like this …
Example:
JavaScript
x
line1
line2
line3
line4
line5
line6
line7
line8
line9
maybe into:
JavaScript
array[0]: line1
line2
line3
array[1]: line4
line5
Thanks!
Advertisement
Answer
Replace nn
with something not contained in the data, set IFS to it, populate the array.
JavaScript
#! /bin/bash
in='line1
line2
line3
line4
line5
line6
line7
line8
line9'
separator=$'xff' # or whatever char not appearing in the data
${IFS+"false"} && unset oldifs || oldifs="$IFS"
IFS=$separator
arr=(${in//$'nn'/$separator})
${oldifs+"false"} && unset IFS || IFS="$oldifs"
printf '<%s>n' "${arr[@]}"