Как сохранить согласованность текста в сценарии оболочки

Добрый день!

Я создаю сценарий оболочки, чтобы затем использовать его для выполнения X (не буду рассказывать)

Это мой текущий сценарий

clear
echo Ahmad A Kazi
echo IDNO: BD_3456
echo 
echo Data Clear Program
echo c 2015 Ahmad A Kazi
echo
echo First Update
echo 
apt-get update
echo
echo Purge Programs
echo
apt-get purge cmake -y
apt-get purge libtool -y
apt-get purge libcurl4-openssl-dev -y
apt-get purge libjansson-dev -y

Это всего лишь часть сценария, потому что остальные являются собственностью

Я хочу, чтобы это было в верхней части выходных данных сценария, а не изменяло свою позицию в течение всего времени, этот текст ниже должен быть последовательно вверху Всего времени

===========================================
Ahmad A Kazi
Copyright 2015, The DNACoin Developers

===========================================

Например

===========================================
Ahmad A Kazi
Copyright 2015, The DNACoin Developers

===========================================

Some thing else is going on......

Это что-то еще не должно в конечном итоге удаление моего имени и авторских прав Кроме того, как печатать время и продолжать самообновление ....

Пожалуйста, помогите!

Спасибо

0
задан 19 March 2015 в 09:20

3 ответа

Вот мой сценарий. Это использует tput X-местоположение Y-местоположения чашки и непрерывно помещает ту информацию сверху экрана с помощью цикла с условием продолжения. Вы могли бы хотеть скорректировать его для своего приложения, но точка ясна. Теперь дайте мне 3,50$, потому что этот сценарий защищен авторским правом ;)

#!/bin/sh

clear
while true; do
clear
tput cup 0 0 
printf  "===========\n SERG KOLO \n================Copyright 2015\n=================="
sleep 1
tput cup 10 10
echo TEST line one of script
echo "Do you love Ubuntu ? "
read answer 
case $answer in

    y) echo " Have a cookie :3  ";;
    n) echo " Go away, Windows lover  ";;
    *) echo  only y or n ;;
esac

sleep 1

df -h

sleep 1

free -h
sleep 1


done

enter image description here

1
ответ дан 19 March 2015 в 09:20
#!/bin/bash
# Create a function just for this script.
mydashes='===================='
function mycls() {
    clear 
    echo $mydashes
    echo Ahmad A Kazi 
    echo Copyright 2015 
    echo $mydashes
    }


mycls
echo Doing stuff
sleep 2
mycls
echo Doing more stuff
sleep 2
mycls
echo Almost done.
sleep 2
echo Done

существуют другие пути, как использование кодов ANSI, но они становятся очень грязными, очень быстро. Это просто и быстро.

0
ответ дан 19 March 2015 в 09:20

Если вывод команд не будет важен, чтобы Вы могли бы закончить все команды &> /dev/null, то весь вывод будет перенаправлен к /dev/null.

Вся информация необходимо показать, что пользователь должен быть похожим echo -ne " Purge Programs\r", чтобы к всегда снова используют ту же строку, \r заставляет курсор возвратиться к первому столбцу.

clear
echo Ahmad A Kazi
echo IDNO: BD_3456
echo 
echo Data Clear Program
echo c 2015 Ahmad A Kazi
echo
echo -ne "First Update\r"
apt-get update &>/dev/null
echo -ne "Purge Programs\r"
apt-get -y purge cmake libtool libcurl4-openssl-dev libjansson-dev &>/dev/null
0
ответ дан 19 March 2015 в 09:20

Другие вопросы по тегам:

Похожие вопросы: