bash shell 将一字符串转换成数组

时间:2022-02-06 01:38:09
把一个字符串,例如 abcdefghijk, 转换成数组array[],array[0]=a,array[1]=b,……,不知道该怎么做,谁能写个例子看看。

6 个解决方案

#1



for index in `seq 0 $((${#str}-1))`
do       
     array[$index]=${str:$index:1}
done

#2



1 #!/bin/bash
  2 for i in `seq 1 7`
  3 do
  4     array[$i]=`echo "abcdefg"|cut -c"$i"`
  5     echo ${array[$i]}
  6 
  7 done
~          

#3


${#str}
主席的这个好玩 bash shell 将一字符串转换成数组

#4



root@yeah ~
$ str=abcdefg

root@yeah ~
$ i=0;while((i<${#str}));do array[$i]=${str:i:1};((i++));done

root@yeah ~
$ set|grep array
array=([0]="a" [1]="b" [2]="c" [3]="d" [4]="e" [5]="f" [6]="g" [7]="")

root@yeah ~
$ echo ${array[0]}
a

root@yeah ~
$ echo ${array[1]}
b

root@yeah ~
$ echo ${array[@]}
a b c d e f g

root@yeah ~
$

#5


echo "abcdefghijk"|awk '{split($0,a,"")} END{for(i in a) print a[i]}'

#6


谢谢,不过我说错了,是字符串转换数组

#1



for index in `seq 0 $((${#str}-1))`
do       
     array[$index]=${str:$index:1}
done

#2



1 #!/bin/bash
  2 for i in `seq 1 7`
  3 do
  4     array[$i]=`echo "abcdefg"|cut -c"$i"`
  5     echo ${array[$i]}
  6 
  7 done
~          

#3


${#str}
主席的这个好玩 bash shell 将一字符串转换成数组

#4



root@yeah ~
$ str=abcdefg

root@yeah ~
$ i=0;while((i<${#str}));do array[$i]=${str:i:1};((i++));done

root@yeah ~
$ set|grep array
array=([0]="a" [1]="b" [2]="c" [3]="d" [4]="e" [5]="f" [6]="g" [7]="")

root@yeah ~
$ echo ${array[0]}
a

root@yeah ~
$ echo ${array[1]}
b

root@yeah ~
$ echo ${array[@]}
a b c d e f g

root@yeah ~
$

#5


echo "abcdefghijk"|awk '{split($0,a,"")} END{for(i in a) print a[i]}'

#6


谢谢,不过我说错了,是字符串转换数组