Bash weird variable whitespace missing
var=`cat tlds.csv|grep .ca,`
# echo "var=:$var:"
:ar=:.ca,Canada
Why is the v missing in the last line?
It should be
:var=:.ca,Canada
instead of
:ar=:.ca,Canada
I noticed a problem with the file with doing a "cat -v" on it.
Here's the issue, the file contains carat M ^M:
.vg,British Virgin Islands^M
.vi,United States Virgin Islands^M
.vn,Vietnam^M
.vu,Vanuatu^M
.wf,Wallis and Futuna^M
.ws,Samoa^M
.ye,Yemen^M
.yt,Mayotte^M
.yu,Yugoslavia^M
.za,South Africa^M
.zm,Zambia^M
I tried removing the carat M but only dos2unix could do it on the file:
Solution
dos2unix tlds.csv