當前位置:首頁 » 網頁前端 » shell調用外部腳本中的函數
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

shell調用外部腳本中的函數

發布時間: 2023-04-05 20:44:35

Ⅰ shell從外部讀入參數調用另一個shell腳本的問題

調用的時候給$args加雙引號就行了
sh other.sh "$args"

任何字元串變數,在使用的時候最好都加上雙引號。

Ⅱ 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腳本里的函數怎麼調用

在代碼復用及可維護性方面,函數有著巨大的優勢,因此,把常用功能封裝成函數是一件非常平常的事。shell腳本中,怎麼定義函數及使用函數:
函數定義:
# func_name 函數名
function func_name(){
#函數體內容
}

# func_name 函數名
func_name(){
#函數體內容
}
函數調用:
func_name parm
函數體中,可以通過$1 $2 ...$9接受函數調用中的變數
函數可以通過return 返回函數執行的結果

可以通過下面一個簡單例子,來看下在shell腳本中怎麼定義使用函數:
1、在/root/bin目錄下新建函數文件main.fun
vim /root/bin/main.fun
2、在main.fun文件中編寫函數findit內容
#!/bin/sh
function findit(){
if [ $# -lt 1 ] ; then #判斷函數參數個數
echo "Usage: findit filename"
return 1
fi
for loop #遍歷調用函數的參數
do
find $HOME -name $loop -print
done
return 0
}
3、Shell中載入函數文件/root/bin/main.fun
. /root/bin/main.fun
4、檢查載入文件
set
set命令將在shell中顯示所有的載入函數
5、調用函數
findit mysql php #在home 目錄查找文件mysql 和文件php

Ⅳ 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調用其他腳本函數

使用位置參數:

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並沒有用到。