linux腳本實現數組值相加


#!/bin/bash

function addarray {

  local sum=0   //局部變量只在函數內部有效,函數外部重新有sum的值時,運行腳本時顯示函數外部的值

  local array

  array=($(echo"$@"))    

  for  value in ${array[*]}

    do

       sum=$[ $sum + $value ]

    done

    echo $sum

}

  myarray=(1,2,3,4,5,6)

  echo ''the orginal array is :${myarray[*]}''

  args1=$(echo ${myarray[*]})

  result=$(addarray $args1)     //將函數的輸出賦給變量result,然后顯示result的值,一種常用技術   ,另外這兩行代碼可以合並成一行:result=$(addarray ${myarray[*]})

  echo ''the sum is :$result''

 

 

linux中一些符號標記:$@ //將所有變量都保存為單獨的詞

                                     $* //將所有參數保存為一個字符串 ,這兩個符號都是可以訪問所有變量

                                    $#  //參數總數

                                    &-  //關閉文件

                                  > &2  //重定向到文件描述符,2為文件描述符

                                  &>  //將STDERR,STDOUT重定向到同一個文件

                                  $?   //確定函數退出狀態碼

 

遺留問題,怎樣改進將數組的輸入變為終端輸入值?


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM