天天看點

shell數組常見操作

1.内容詳見腳本

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

<code>#!/bin/bash</code>

<code>#聲明數組</code>

<code>declare</code> <code>-a TEST</code>

<code>#j=0</code>

<code>#cat &gt; test.file &lt;&lt; EOF</code>

<code>#1</code>

<code>#2</code>

<code>#3</code>

<code>#4</code>

<code>#5</code>

<code>#EOF</code>

<code>#将檔案的值寫入到數組中</code>

<code>#for line in $(cat test.file)</code>

<code>#do</code>

<code>#       TEST[${j}]=${line}</code>

<code>#       let j+=1</code>

<code>#done</code>

<code>#定義數組内容</code>

<code>TEST[0]=1</code>

<code>TEST[1]=2</code>

<code>TEST[2]=3</code>

<code>TEST[3]=4</code>

<code>TEST[4]=5</code>

<code>#列印數組内容</code>

<code>echo</code> <code>${TEST[@]}</code>

<code>#列印數組所有元素:${ARRAY_NAME[@]} or ${ARRAY_NAME[*]}</code>

<code>#列印數組元素 方式一</code>

<code>echo</code> <code>"one way to print all of the array elements"</code>

<code>for</code> <code>i </code><code>in</code> <code>${TEST[@]}</code>

<code>do</code>

<code>        </code><code>echo</code> <code>${i}</code>

<code>done</code>

<code>#列印數組元素 方式二</code>

<code>echo</code> <code>"another way to print all of the array elements"</code>

<code>for</code> <code>i </code><code>in</code> <code>${TEST[*]}</code>

<code>#擷取數組長度</code>

<code>#法一</code>

<code>echo</code> <code>"get array length"</code>

<code>echo</code> <code>"solution 1"</code>

<code>echo</code> <code>${</code><code>#TEST[*]}</code>

<code>echo</code> <code>"solution 2"</code>

<code>#法二</code>

<code>echo</code> <code>${</code><code>#TEST[@]}</code>

<code>#列印數組的第四個元素</code>

<code>echo</code> <code>"print the fourth array element"</code>

<code>echo</code> <code>${TEST[3]}</code>

<code>#删除數組的第四個元素</code>

<code>echo</code> <code>"delete fourth array element"</code>

<code>unset</code> <code>TEST[3]</code>

<code>#删除整個數組,删除後不會再列印數組元素</code>

<code>unset</code> <code>TEST</code>

2.執行結果

<code>[root@</code><code>test</code> <code>~]</code><code># sh a.sh </code>

<code>1 2 3 4 5</code>

<code>one way to print all of the array elements</code>

<code>1</code>

<code>2</code>

<code>3</code>

<code>4</code>

<code>5</code>

<code>another way to print all of the array elements</code>

<code>get array length</code>

<code>solution 1</code>

<code>solution 2</code>

<code>print the fourth array element</code>

<code>delete fourth array element  </code><code>#此處可以看到沒有列印出已删除的數組元素4</code>

<code></code>

本文轉自 xoyabc 51CTO部落格,原文連結:http://blog.51cto.com/xoyabc/1845831,如需轉載請自行聯系原作者