簡體   English   中英

在腳本中調用Shell腳本

[英]Calling shell script within a script

Below are my two script codes:
**a.sh**

#!/bin/sh

SRC_PATH="/xx/xxxx"
HOST='ftp.xxx.xxx.com'
USER='xxxx'
PASS='xxx'
FTP_SRC_PATH='out'

**b.sh** 
#!/bin/sh

/xx/xxx/a.sh

ftp -n $HOST <<END_SCRIPT
quote USER $USER
quote PASS $PASS
binary
prompt off
cd $FTP_SRC_PATH
lcd $SRC_PATH
mget IMS_*.ZIP
bye
END_SCRIPT

我的問題是當我運行b.sh時,它沒有調用a.sh並使用其中定義的變量連接到ftp服務器。 我已經看到許多解決方案已經在線,但似乎無法正常工作。 請幫忙

您可以在dot命令中包含a.sh

. /xx/xxx/a.sh

您可以從b內調用腳本a,如下所示:

sh ./a.sh

確保兩個外殼程序腳本都在同一文件路徑中。 另外,您可以按以下方式在腳本中傳遞值:

sh ./a.sh $ d $ e

此處傳遞的值可以作為$ 1 $ 2訪問。

這是一個例子:

灰:

!/ bin / bash

yourvalue="test"
sh ./b.sh $yourvalue

並且我能夠訪問在外殼腳本b中以$ 1形式在此處傳遞的變量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM