我需要将一些值打印到txt文件中。它们的格式如下:
然而所需输出必须是:
我这样做:
input="Sno;Name;Field1;Field2"
然而所需输出必须是:
Sno-Name
FIELDS ALLOCATED:
Field1
Field2
我这样做:
我是这样做的:
echo $input | $(awk -F';' '{print $1"-"$2}') >>$txtfile
echo "FIELDS ALLOCATED:">>$txtfile
echo "$input" | cut -d';' -f 3,4 >>$txtfile
这很简单。但问题在于Field1或Field2可能包含换行符。每当出现这种情况时,cut或awk就不会读取第4个字段,并将其视为一个新行。请帮忙解决如何从给定的输入格式中打印两个字段(保留换行符)。