執行個體一:基本定義 運用shell的數組
<code>#!/bin/bash</code>
<code>#by xxx at 2016</code>
<code>#定義數組 并指派</code>
<code>log_file_name=(access error licess)</code>
<code>#擷取數組的長度</code>
<code>log_file_num=${</code><code>#log_file_name[@]}</code>
<code>echo</code> <code>$log_file_num </code>
<code>for</code> <code>((i=0;i<$log_file_num;i++))</code>
<code>do</code>
<code>#擷取數組的下标為i的值,數組的下标是從0開始的</code>
<code> </code><code>echo</code> <code>${log_file_name[i]}</code>
<code>done</code>
第二:深入一點的
數組資料來自指令
<code># files=($(ls))</code>
<code># echo ${files[@]} </code>
<code># echo ${files[@]} | tr " " "\n"</code>
第三:周遊數組
<code>for</code> <code>((i=0;i<${</code><code>#array[@]};i++));do echo ${array[$i]};done</code>
第四:很數組有關的題目:
bash for 循環列印下面這句話中字母大于6的單詞
<code>str=</code><code>"i am oldboy teacher welcome to oldboy trainning class."</code>
<code>for</code> <code>sub </code><code>in</code> <code>`</code><code>echo</code> <code>$str`</code>
<code>#for sub in `echo $str| tr " " "\n"`</code>
<code> </code><code>if</code> <code>[ ${</code><code>#sub} -ge 6 ];then</code>
<code> </code><code>echo</code> <code>$sub</code>
<code> </code><code>fi</code>
總結:
最常用的兩種定義數組的方法
1 array=(value1 value2 valu3 valuen)
2 array=($(cmd))
最常用的擷取數組的内容
1 擷取長度echo ${#array[@]}
2 擷取元素 echo ${array[index]}
最常用的循環列印
for ((i=0;i<${#array[@]};i++))
for f in ${array[@]}
擴充:有關字元串長度的方法:
1 子串的方法
2 wc -c 的方法
3 expr length
4 awk 的length函數
7
本文轉自殘劍部落格51CTO部落格,原文連結http://blog.51cto.com/cuidehua/1829186如需轉載請自行聯系原作者
cuizhiliang