顯示文章

這裡允許您檢視這個會員的所有文章。請注意, 您只能看見您有權限閱讀的文章。


文章 - egg41230

頁: [1]
1
Linux 討論版 / Re: shell 問題
« 於: 2018-09-18 17:39 »
我懂了~謝謝

2
Linux 討論版 / Re: shell 問題
« 於: 2018-09-18 17:30 »
是我這樣寫法,所以涵式的變數不是global的嗎

3
Linux 討論版 / Re: shell 問題
« 於: 2018-09-18 17:21 »

#!/bin/bash

#創建資料夾
#擷取domain字串
cut_domain_string(){
domain_string=$(echo  "$2" | awk  -F ';'  '{for (i=1; i <= NF; i++) {printf $i" "}}' )
echo $domain_string
}
#擷取目錄字串
cut_dir_string(){
cut_dirtime_string=$(echo   "$1" | awk  '{print $1}' )
echo $cut_dirtime_string
}

backup(){
 bp_dir='/root/conf/backup'
 mkdir -p  "$bp_dir"/"$cut_timedir"/"$cut_domain_dir"
}
main(){
cut_timedir=$(cut_dir_string $1)
cut_domain_dir=$(cut_domain_string $2)
backup $cut_timedir $cut_domain_dir
}

main $1 $2

請問一下我寫了一隻shell 程式碼如上,我把$2的值傳給cut_domain_string,卻無法傳遞進去,請問我為啥無法傳遞進去?
在猜是否為awk 的問題?
各位大大~小弟不才~這邊想請教一個問題~再shell 裏面的function 變數不是都是全域的嗎,那我想請問一下為啥我在上面
的寫法,再main() function  裡面 echo $bp_dir 為啥會是空字串?

4
Linux 討論版 / Re: shell 問題
« 於: 2018-09-17 17:20 »
感恩大大~已經OK了

5
Linux 討論版 / shell 問題
« 於: 2018-09-17 14:33 »

#!/bin/bash

#創建資料夾
#擷取domain字串
cut_domain_string(){
domain_string=$(echo  "$2" | awk  -F ';'  '{for (i=1; i <= NF; i++) {printf $i" "}}' )
echo $domain_string
}
#擷取目錄字串
cut_dir_string(){
cut_dirtime_string=$(echo   "$1" | awk  '{print $1}' )
echo $cut_dirtime_string
}

backup(){
 bp_dir='/root/conf/backup'
 mkdir -p  "$bp_dir"/"$cut_timedir"/"$cut_domain_dir"
}
main(){
cut_timedir=$(cut_dir_string $1)
cut_domain_dir=$(cut_domain_string $2)
backup $cut_timedir $cut_domain_dir
}

main $1 $2

請問一下我寫了一隻shell 程式碼如上,我把$2的值傳給cut_domain_string,卻無法傳遞進去,請問我為啥無法傳遞進去?
在猜是否為awk 的問題?

頁: [1]