Skip to content

Instantly share code, notes, and snippets.

@mattintosh4
Last active August 29, 2015 14:23
Show Gist options
  • Save mattintosh4/6b1d8b9b158efa17f8cf to your computer and use it in GitHub Desktop.
Save mattintosh4/6b1d8b9b158efa17f8cf to your computer and use it in GitHub Desktop.
#!/bin/bash
# 文字列
string=
# 配列
array_1=()
# 配列(declare)
declare -a array_2=()
# 配列(declare)
declare -a array_3=
# 文字列 -> 配列
array_4=
array_4=()
# 文字列 -> 配列(declare)
array_5=
declare -a array_5=()
# 文字列 -> 配列(declare)
array_6=
declare -a array_6
declare -p string ${!array_*}
$ bash -x gistfile1.sh
+ string=
+ array_1=()
+ array_2=()
+ declare -a array_2
+ declare -a array_3=
+ array_4=
+ array_4=()
+ array_5=
+ array_5=()
+ declare -a array_5
+ array_6=
+ declare -a array_6
+ declare -p string array_1 array_2 array_3 array_4 array_5 array_6
declare -- string=""
declare -a array_1='()'
declare -a array_2='()'
declare -a array_3='([0]="")'
declare -a array_4='()'
declare -a array_5='()'
declare -a array_6='([0]="")'
#!/bin/bash
array_1=()
array_2=
declare -a array_2
array_3=(A B C)
array_4="A B C"
declare -a array_4
declare -p ${!array_*}
for f in ${!array_*}
do
eval echo \${\#${f}[@]}
done
$ bash gistfile1.sh
declare -a array_1='()'
declare -a array_2='([0]="")'
declare -a array_3='([0]="A" [1]="B" [2]="C")'
declare -a array_4='([0]="A B C")'
0
1
3
1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment