prepare_dirs() { #創建必要的目錄,此處會輸出到安裝過程中 ECHO_DEBUG "Creating necessary directories ..." #PKG_DIR, PKG_MISC_DIR, 前文已經定義過了,FOR循環讀取,存在跳過,如果不存在,就直接建立。 for i in ${PKG_DIR} ${PKG_MISC_DIR} do [ -d "${i}" ] || mkdir -p "${i}" done }執行這個函數後,即可把需要的目錄全部建立好了。接下來分析fetch_misc()函數,代碼如下:
fetch_misc() { #進入到這個目錄,准備下載安裝文件 cd ${PKG_MISC_DIR} #計算安裝總數 misc_total=$(( $(echo ${MISCLIST} | wc -w | awk '{print $1}') )) #定義計數器 misc_count=1 #安裝提醒,獲取源文件中 ECHO_INFO "Fetching source tarballs ..." #for循環讀取標記列表,獲得下載地址,並下載到本地 for i in ${MISCLIST}; do url="${IREDMAIL_MIRROR}/yum/misc/${i}" ECHO_INFO "+ ${misc_count} of ${misc_total}: ${url}" ${FETCH_CMD} "${url}" misc_count=$((misc_count + 1)) done }
其實這個腳本的含義就是從下面這個地址裡下載對應版本的安裝文件