原来bash也有数组,长见识了。

偶尔在http://github.com/lainme/personal/blob/master/%E8%84%9A%E6%9C%AC/syncfile看到,长见识了

[bash]files=(
[0]=/网站/
[2]=/文档/
[4]=/资源/
[5]=/脚本/
[6]=/Program/
[9]=/.gnome2/gedit/
[8]=/.irssi/config
[11]=/.bashrc
)
#显示数组长度
echo ${#files[*]}
8
#等价于
echo ${#files[@]}
8
#显示内容
echo ${files[@]}
/网站/ /文档/ /资源/ /脚本/ /Program/ /.irssi/config /.gnome2/gedit/ /.bashrc
#显示主键
set | grep files
files=([0]="/网站/" [2]="/文档/" [4]="/资源/" [5]="/脚本/" [6]="/Program/" [8]="/.irssi/config" [9]="/.gnome2/gedit/" [11]="/.bashrc")
#遍历
for var in ${files[@]};do
echo $var
done
/网站/
/文档/
/资源/
/脚本/
/Program/
/.irssi/config
/.gnome2/gedit/
/.bashrc
#另类赋值
filename=(ls)
echo ${filename[*]}
aquota.group aquota.user bin boot dev etc fastboot home lib media mnt opt proc root sbin selinux sqlUSTlEV srv sys tmp usr var
#赋值
chars='abcdefghijklmnopqrstuvwxyz'
for (( i=0; i<26; i++ )) ; do
array[$i]=${chars:$i:1}
echo ${array[$i]}
done
#
a
b
c
.
.
y
z
[/bash]

${chars:$i:1},表示从chars字符串的 $i 位置开始,获取 1 个字符。如果将 1 改为 3 ,就获取 3 个字符

Author Info :
  • From:原来bash也有数组,长见识了。
  • URL:https://blog.ihipop.com/2010/10/1654.html
  • Please Reserve This Link,Thanks!
  • 发表回复

    您的电子邮箱地址不会被公开。 必填项已用*标注