在用read读取管道传过来的数据的时候,默认的IFS是空格,例如
[nhuang@localhost ~]$ echo ‘hello;Na than‘ | while read fist last; do echo $last, $fist;done than, hello;Na
如果我们要使用;作为新的分割符,则要指定IFS,通常是在read之前,例如:
[nhuang@localhost ~]$ echo ‘hello;Na than‘ | while IFS=‘;‘ read fist last; do echo $last, $fist;done Na than, hello
这样,就成功了。
Bash:在使用read读取数据的时候,如何设定deimiter?
原文:http://www.cnblogs.com/nhuang2/p/5855906.html