INT 21h

Hi, I am Vladimir Smagin, SysAdmin and Kaptain. Telegram Email / GIT / Thingiverse / RSS / GPG

Linux: применение whiptail в реальных условиях

№ 6946 В разделе "Sysadmin" от February 13th, 2015,
В подшивках:

Есть такая штука whiptail, которая помогает вам в текстовой консольке рисовать диалоговые окна в bash скриптах. Этот конкретный postinst скрипт для сборки deb репозитория btsync. Сначала диалогом с кнопками да и нет конфигурируется интерфейс на котором будет работать btsync (в тупую меняется sed’ом с дефолтного значения), потом показывается упоминание об опасности слушания всех интерфейсов и в конце индикатор оставшегося прогресса (начат с 30%, т.к. конфигурация являлась одним из трех шагов установки). Именно с помощью echo в индикаторной части выводятся проценты выполненой задачи.

#!/bin/bash
if [ ! -f /etc/btsync.conf.fix ]
  then
    if (whiptail --title "BTSYNC CONFIGURATION" --yesno "Listen \
            only loopback interface? If NO btsync will bind to all \
            interfaces. Use firewall if you in non private network!" 10 60) 
    then
        sed -i.orig s/0.0.0.0/127.0.0.1/g /etc/btsync.conf
    else
        sed -i.orig s/127.0.0.1/0.0.0.0/g /etc/btsync.conf
        whiptail --title "REMEMBER IT!" --msgbox "BTSYNC WILL \
            LISTEN ALL INTERFACES! USE IT WITH CARE!" 10 60
    fi
    #prevent reconfiguring at next btsync update
    touch /etc/btsync.conf.fix
fi
{
    echo 30
    /usr/sbin/update-rc.d btsync defaults &> /dev/null
    echo 70
    /etc/init.d/btsync restart &> /dev/null
} | whiptail --gauge "Please wait while installing" 6 60 0

Нет комментариев »

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Яндекс.Метрика

Fortune cookie: Today's spam: myspace recommends this website for all MEN looking to get 2-3" bigger cock