อาร์เรย์เชลล์
อาร์เรย์สามารถเก็บค่าหลายค่า เปลือกทุบตีสนับสนุนเฉพาะอาร์เรย์หนึ่งมิติ (ไม่สนับสนุนอาร์เรย์หลายมิติ) ไม่จำเป็นต้องกำหนดขนาดของอาร์เรย์จะเริ่มต้นได้ (คล้ายกับ PHP)
ชอบมากที่สุดการเขียนโปรแกรมภาษาห้อยขององค์ประกอบมากมายที่เริ่มต้นจากศูนย์
เชลล์ใช้วงเล็บหมายถึงองค์ประกอบอาร์เรย์กับ "พื้นที่" สัญลักษณ์แยกไวยากรณ์เป็นดังนี้:
array_name=(value1 ... valuen)
ตัวอย่าง
#!/bin/bash # author:本教程 # url:www.w3big.com my_array=(A B "C" D)
นอกจากนี้เรายังสามารถกำหนดอาร์เรย์โดยใช้มาตรฐานดังต่อไปนี้:
array_name[0]=value0 array_name[1]=value1 array_name[2]=value2
อ่านอาร์เรย์
รูปแบบทั่วไปจะอ่านค่าองค์ประกอบอาร์เรย์:
${array_name[index]}
ตัวอย่าง
#!/bin/bash # author:本教程 # url:www.w3big.com my_array=(A B "C" D) echo "第一个元素为: ${my_array[0]}" echo "第二个元素为: ${my_array[1]}" echo "第三个元素为: ${my_array[2]}" echo "第四个元素为: ${my_array[3]}"
รันสคริปต์เอาท์พุทจะเป็นดังนี้:
$ chmod +x test.sh $ ./test.sh 第一个元素为: A 第二个元素为: B 第三个元素为: C 第四个元素为: D
ได้รับอาร์เรย์ขององค์ประกอบทั้งหมดที่
ใช้ @ * หรือจะได้รับอาร์เรย์ขององค์ประกอบทั้งหมดเช่น:
#!/bin/bash # author:本教程 # url:www.w3big.com my_array[0]=A my_array[1]=B my_array[2]=C my_array[3]=D echo "数组的元素为: ${my_array[*]}" echo "数组的元素为: ${my_array[@]}"
รันสคริปต์เอาท์พุทจะเป็นดังนี้:
$ chmod +x test.sh $ ./test.sh 数组的元素为: A B C D 数组的元素为: A B C D
ได้รับความยาวของอาร์เรย์
ได้รับอาร์เรย์ของความยาวของความยาวสายและได้รับวิธีการเดียวกันตัวอย่างเช่น:
#!/bin/bash # author:本教程 # url:www.w3big.com my_array[0]=A my_array[1]=B my_array[2]=C my_array[3]=D echo "数组元素个数为: ${#my_array[*]}" echo "数组元素个数为: ${#my_array[@]}"
รันสคริปต์เอาท์พุทจะเป็นดังนี้:
$ chmod +x test.sh $ ./test.sh 数组元素个数为: 4 数组元素个数为: 4