查了好就的字符拆分,都不会,只能怪自己才艺不精,废话不多说,整理别人的。(作为自己笔记)
字符:12345abcde
拆分成:12345abcde方法
echo 12345abcde | awk -F '' '{for(i=1;i<=NF;i++)print $i}'
echo 12345abcde | sed 's/./&\n/g'
echo 12345abcde | grep -Po '.'
echo "12345abcde" | fold -w1
然后
求1000!的结果中包含多少个0?注:1000! = 1×2×3×4×5×...×999×1000
[root@node4 ~]# cat t.sh
#!/bin/bashexport a=1for i in `seq 1 1000`doa=`expr $a \* $i`doneecho $a[root@node4 ~]# sh t.sh | awk -F '' '{for(i=1;i<=NF;i++) ++S[$i] } END{for (i in S) if( i == 0 ) print i " "S[i]}'
0 472那0到9呢
[root@node4 ~]# sh t.sh | awk -F '' '{for(i=1;i<=NF;i++) ++S[$i] } END{for (i in S) print i " "S[i]}'
4 2295 2136 2317 2178 2579 2460 4721 2392 2483 216查询一个字符串中字符 B 所在位子
[root@node4 ~]# cat aa
dfgsBfrgB\frgfvregBBgrgfsdvgbBefBfrg[root@node4 ~]# awk -F '' '{for(i=1;i<=NF;i++)S[i]=$i ;for (i in S) if(S[i] == "B")print i" " S[i] " row " NR;delete S}' aa
5 B row 19 B row 110 B row 21 B row 37 B row 51 B row 6