Functions and arrays in the shell

Source: Internet
Author: User

Functions in the shell

1. First case:

[[email protected] shell]# sh fun1.sh the first par is bthe second par is athe third par is 2the script name is fun1.shthe number of par is 5[[email protected] shell]# cat fun1.sh #!/bin/bashfunction inp(){    echo "the first par is $1"    echo "the second par is $2"    echo "the third par is $3"    echo "the script name is $0"    echo "the number of par is $#"}inp b a 2 3 adf

You can also put the parameters outside.

[[email protected] shell]# cat fun1.sh #!/bin/bashfunction inp(){    echo "the first par is $1"    echo "the second par is $2"    echo "the third par is $3"    echo "the script name is $0"    echo "the number of par is $#"}inp $1 $2 $3 [[email protected] shell]# sh fun1.sh 1 2the first par is 1the second par is 2the third par is the script name is fun1.shthe number of par is 2

2. A second case:

[[email protected] shell]# cat fun2.sh #!/bin/bashsum(){    s=$[$1+$2]    echo $s}sum 1 10[[email protected] shell]# sh fun2.sh 11[[email protected] shell]# sh -x fun2.sh + sum 1 10+ s=11+ echo 1111

3. A third case:

[[email protected] shell]# cat fun3.sh #!/bin/baship(){    ifconfig |grep -A1 "$1: "|awk ‘/inet/ {print $2}‘}read -p "please input the eth name: " ethip $eth [[email protected] shell]# sh fun3.sh please input the eth name: ens33192.168.188.130[[email protected] shell]# sh fun3.sh please input the eth name: ens33:0192.168.188.150[[email protected] shell]# sh fun3.sh please input the eth name: ens37192.168.252.128
Arrays in the shell

1. Define the array and print:

[[email protected] shell]# b=(1 2 3)[[email protected] shell]# echo $b1[[email protected] shell]# echo ${b[@]}1 2 3[[email protected] shell]# echo ${b[*]}1 2 3[[email protected] shell]# echo ${b[1]}2[[email protected] shell]# echo ${b[0]}1[[email protected] shell]# echo ${b[2]}3

2. Get the number of array elements: add a #

[[email protected] shell]# echo ${#b[*]}3

3. Assigning values to arrays:

[[email protected] shell]# b[3]=a[[email protected] shell]# echo ${b[*]}1 2 3 a[[email protected] shell]# b[3]=66[[email protected] shell]# echo ${b[*]}1 2 3 66

4. If the subscript does not exist, add one automatically:

[roo[email protected] shell]# b[5]=6[[email protected] shell]# echo ${b[*]}1 2 3 66 6

5. Delete the element:

[[email protected] shell]# unset b[3][[email protected] shell]# echo ${b[*]}1 2 3 6 6[[email protected] shell]# unset b[4][[email protected] shell]# echo ${b[*]}1 2 3 6[[email protected] shell]# unset b[[email protected] shell]# echo ${b[*]}


6. Array Shards:

[[email protected] shell]# a=(`seq 1 10`)[[email protected] shell]# echo ${a[*]}1 2 3 4 5 6 7 8 9 10[[email protected] shell]# echo ${a[*]:3:4}4 5 6 7[[email protected] shell]# echo ${a[*]:-3:2}1 2 3 4 5 6 7 8 9 10[[email protected] shell]# echo ${a[*]:0-3:2}8 9

7. Array substitution:

[[email protected] shell]# echo ${a[*]/8/6}1 2 3 4 5 6 7 6 9 10[[email protected] shell]# a=(${a[*]/8/6})[[email protected] shell]# echo ${a[*]}1 2 3 4 5 6 7 6 9 10
Demand analysis of alarm system

Functions and arrays in the shell

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.