我有这个代码:
- #!/bin/bash
- input="./user.cvs"
- while IFS=';' read -r f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13
- do
- path="./QRcodes/$f2$f3.png"
- vcard="BEGIN:VCARD%0AN;CHARSET=utf-8:$f3;$f2;;$f1;%0AADR;CHARSET=utf-8;INTL;PARCEL;WORK:;;$f10;$f11;;$f12;$f13%0AEMAIL;INTERNET:$f6%0AORG:$f4%0ATEL;WORK:$f8%0ATEL;FAX;WORK:$f9%0ATITLE:$f5%0AURL;WORK:$f7%0AEND:VCARD"
- latex=""
- encodedVCard=$(echo "$vcard" | sed -e 's/\+/\%2B/g')
- url="http://api.qrserver.com/v1/create-qr-code/?size=300x300&data=$encodedVCard"
- wget -O "$path" "$url"
- latex+="\n \\begin{tabular}{ C C } \\includegraphics[height=30mm]{graphic.png} & Name \\\\ \\end{tabular}"
- echo $latex
- done < "$input"
一切正常,除了’echo $latex’总是打印相同的行而不是多次.我错过了什么?
如果你想附加到字符串,只需
- latex="$latex newstring"
要么
- latex=${latex}newstring
您需要注意bash不会将上述内容解释为新的var,例如“$a4”将被解释为变量a4而不是$a,附加4.