Shell脚本:对带空格的字符串的逐项检索
代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
[oracle@oracle-db script]$ cat for_each_item_1 current_id=2 list_a="1_a 2_b 3_c 4_d" max_count=`echo $list_a | sed 's/[[:space:]]/\n/g' | wc -l` for((i=$current_id;i<=$max_count;i++)) do echo "-------" echo `echo $list_a | sed 's/[[:space:]]/\n/g' | grep $i"_"` done [oracle@oracle-db script]$ [oracle@oracle-db script]$ sh for_each_item_1 ------- 2_b ------- 3_c ------- 4_d [oracle@oracle-db script]$ |
在这段代码中,最关键的步骤是:使用sed将空格([[:space:]])换成换行符(\n)。
————————————
Done。