Did you escape the pipe | in your split otherwise it is trying to split on nothing or nothing so breaks your data into single characters.
echo"|0|PA|1|||BELL|FRANCIS|D|||1||ANGORA||FLEET|HAMPSHIRE|GU51 2UA|"\ | perl -ne 'print join "+", split /\|/' +0+PA+1+++BELL+FRANCIS+D+++1++ANGORA++FLEET+HAMPSHIRE+GU51 2UA+ echo"|0|PA|1|||BELL|FRANCIS|D|||1||ANGORA||FLEET|HAMPSHIRE|GU51 2UA|"\ | perl -ne 'print join "+", split /|/' |+0+|+P+A+|+1+|+|+|+B+E+L+L+|+F+R+A+N+C+I+S+|+D+|+|+|+1+|+|+A+N+G+O+R+ +A+|+|+F+L+E+E+T+|+H+A+M+P+S+H+I+R+E+|+G+U+5+1+ +2+U+A+|+ +
Cheers,
R.
In reply to Re: Reading data from file
by Random_Walk
in thread Reading data from file
by adam_wood1234
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |