2014-12-30 99 views
-1

我已經編寫了一個腳本,現在我想通過將其主要腳本的一部分移動到其他文件中來使其更易於讀取,但不幸的是我無法執行此操作。從另一個shell腳本中調用函數

現在,讓我們說我有文件utils.sh下面的代碼:

#!/bin/bash 

sayHello() 
{ 
    echo "Hello World" 
} 

他們從我的主腳本我嘗試以下方法,但不工作:

#!/bin/bash 

./utils.sh 

sayHello 

所以,問題是,如何從utils.sh中調用函數?

+0

謝謝下來投票。我已經寫過,我對shell腳本完全陌生。 –

+0

在對某事進行詢問之前,不要在不做任何研究的藉口。嘗試在網上搜索「導入bash腳本」之類的東西,你會發現這個問題已經被回答了很多次。 –

+0

我知道這不是一個藉口,而且我總是首先進行一項研究。另外,在提交問題之前,我查看了提供給我的建議的結果stackoverflow,並且我沒有找到任何答案。可能我會搜索錯誤的條款,但這不是再次投票的原因。 –

回答

4

你必須採購它,用.source

~$ cat >main.sh 
#!/bin/bash 
. ./utils.sh #or source ./utils.sh 
sayHello 

然後

~$ ./main.sh 
Hello World 
+0

謝謝!這似乎適用於我。我在10分鐘內投票。 –

2

你的主腳本應該是這樣的:

#!/bin/bash 

source utils.sh 

echo "Main" 
sayHello 
相關問題