speeding up the output of the install list
This commit is contained in:
		
							
								
								
									
										42
									
								
								winehelper
									
									
									
									
									
								
							
							
						
						
									
										42
									
								
								winehelper
									
									
									
									
									
								
							| @@ -1281,21 +1281,35 @@ run_autoinstall () { | |||||||
|     export INSTALL_SCRIPT INSTALL_MODE |     export INSTALL_SCRIPT INSTALL_MODE | ||||||
|  |  | ||||||
|     if [[ $INSTALL_SCRIPT_NAME == "list" ]] || [[ -z "$INSTALL_SCRIPT_NAME" ]] ; then |     if [[ $INSTALL_SCRIPT_NAME == "list" ]] || [[ -z "$INSTALL_SCRIPT_NAME" ]] ; then | ||||||
|         print_info "Список программ с возможностью автоматической установки:" |  | ||||||
|         for list in $(ls "$WH_AUTOINSTALL_DIR") ; do |         list_install_scripts() { | ||||||
|             AI_INFO="$(grep "info_ru:" "$WH_AUTOINSTALL_DIR/$list" | awk -F"info_ru: " '{print $2}')" |             local dir="$1" | ||||||
|             AI_PROGNAME="$(grep "PROG_NAME=" "$WH_AUTOINSTALL_DIR/$list" | awk -F"PROG_NAME=" '{print $2}')" |             local title="$2" | ||||||
|             echo -e "\n$list - $AI_PROGNAME" |             [[ ! -d "$dir" ]] || [[ -z "$(ls -A "$dir" 2>/dev/null)" ]] && return | ||||||
|             echo "$AI_INFO" |  | ||||||
|         done |             print_info "$title" | ||||||
|  |  | ||||||
|  |             awk ' | ||||||
|  |                 FNR==1 { | ||||||
|  |                     if (progname) { | ||||||
|  |                         printf "\n%s - %s\n%s\n", filename, progname, info | ||||||
|  |                     } | ||||||
|  |                     progname=""; info=""; filename=FILENAME | ||||||
|  |                     sub(".*/", "", filename) | ||||||
|  |                 } | ||||||
|  |                 /info_ru:/ { sub(/.*info_ru: /, ""); info=$0 } | ||||||
|  |                 /PROG_NAME=/ { sub(/.*PROG_NAME=/, ""); progname=$0 } | ||||||
|  |                 END { | ||||||
|  |                     if (progname) { | ||||||
|  |                          printf "\n%s - %s\n%s\n", filename, progname, info | ||||||
|  |                     } | ||||||
|  |                 } | ||||||
|  |             ' "$dir"/* | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         list_install_scripts "$WH_AUTOINSTALL_DIR" "Список программ с возможностью автоматической установки:" | ||||||
|         echo |         echo | ||||||
|         print_info "Список программ с возможностью установки из существующего дистрибутива:" |         list_install_scripts "$WH_MANUALINSTALL_DIR" "Список программ с возможностью установки из существующего дистрибутива:" | ||||||
|         for list in $(ls "$WH_MANUALINSTALL_DIR") ; do |  | ||||||
|             AI_INFO="$(grep "info_ru:" "$WH_MANUALINSTALL_DIR/$list" | awk -F"info_ru: " '{print $2}')" |  | ||||||
|             AI_PROGNAME="$(grep "PROG_NAME=" "$WH_MANUALINSTALL_DIR/$list" | awk -F"PROG_NAME=" '{print $2}')" |  | ||||||
|             echo -e "\n$list - $AI_PROGNAME" |  | ||||||
|             echo "$AI_INFO" |  | ||||||
|         done |  | ||||||
|     elif [[ "$INSTALL_SCRIPT" != "0" ]] ; then |     elif [[ "$INSTALL_SCRIPT" != "0" ]] ; then | ||||||
|         source "$INSTALL_SCRIPT" "$@" |         source "$INSTALL_SCRIPT" "$@" | ||||||
|         print_info "Завершена установка $INSTALL_SCRIPT_NAME" |         print_info "Завершена установка $INSTALL_SCRIPT_NAME" | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user