Ⅰ shell腳本中如何跨腳本調用其他腳本中的函數
這個前提是在你腳本運行過程中,其他腳本也需要運行並調用,然後可以把函數放到環境變數中,再從腳本中讀取環境變數
Ⅱ shell調用其他腳本函數
使用位置參數:
b.sh裡面這樣寫
#!/bin/bash
basha.sh10020
a.sh里這樣寫
#!/bin/bash
number=$1
number_1=$2
functionfun1(){
echo$1
}
functionfun2(){
echo$1
}
fun1$number
指出幾點問題:
你的原腳本里為什麼fun_get=fun1
這樣做沒什麼意義;
fun2並沒有用到。
Ⅲ shell腳本里的函數怎麼調用
shell中的函數,要在定義這個函數的腳本中進行調用!
#!/bin/sh
echo_line(){
echodate
echo"Wellcometoshellfunc!"
}
echo_hello(){
echo"HelloWorld!"
}
##在這里調用,將全部代碼寫入test.sh就可以了
echo"callecho_hello"
echo_hello
echo"callecho_line"
echo_line
在命令行下執行:
$test.sh
Ⅳ shell腳本怎麼調用其他shell腳本
在Shell中要如何調用別的shell腳本,或別的腳本中的變數,函數呢?
方法一: . ./subscript.sh
方法二: source ./subscript.sh
注意:
1.兩個點之間,有空格,千萬注意.
2.兩個腳本不在同一目錄,要用絕對路徑
3.為簡單起見,通常用第一種方法
例如:
復制代碼代碼如下:
main.sh #主腳本
subscripts.sh #子腳本,或者說被調腳本
[code]
[code]
###subscripts.sh 腳本內容如下:###
#!/bin/bash
string="Hello,World! \n"
復制代碼代碼如下:
###main.sh 腳本內容如下###
#!/bin/bash
. ./subscripts.sh
echo -e ${string}
exit 0
輸出結果:
復制代碼代碼如下:
# chmod +x ./main.sh
# ./main.sh
Hello,World!
#
Ⅳ 如何調試shell腳本各種方法都說說。
方法一:sh -x script.sh
-x選項會將運行到的腳本內容顯示在屏幕上,前面有個+號。這樣就知道哪句被執行到了。對調試很有幫助。
方法二:在腳本中使用debug開關
適用於只調試部分腳本的情況。
set -x
......(要調試的代碼段)
set +x
然後sh script.sh運行腳本
方法三:在腳本中添加列印
比如搞個log輸出函數,專門用於列印調試相關信息。
_log()
{
if [ "$_DEBUG" = "true" ]; then
echo "調試信息"
fi
}
只要在外面控制$_DEBUG開關即可。