#数组的声明与遍历
animals=("a dog" "a cat" "a fish")
#wrong ways to use this
for i in ${animals[*]}; do echo $i; done
for i in ${animals[@]}; do echo $i; done
for i in "${animals[*]}"; do echo $i; done
#this is what we want correct way to use
for i in "${animals[@]}"; do echo $i; done
#数组元素的排序
a=(f e d c b a)
echo "Original array: ${a[@]}"
a_sorted=($(for i in "${a[@]}"; do echo $i; done | sort))
echo "Sorted array: ${a_sorted[@]}"
#删除数组长或数组的某个元素
foo=(a b c d e f)
echo ${foo[@]}
unset foo[2]
echo ${foo[@]}
cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。
主要参数
-b :以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。
-c :以字符为单位进行分割。
-d :自定义分隔符,默认为制表符。
-f :与-d一起使用,指定显示哪个区域。
-n :取消分割多字节字符。仅和 -b 标志一起使用。如果字符的最后一个字节落在由 -b 标志的 List 参数指示的<br />范围之内,该字符将被写出;否则,该字符将被排除。
#split string to array one demo
foo="hello world hello java hello docker hello spark hello stream"
declare -a bar
read -a bar <<<$foo