Скрипт обновления ПО FreeBSD

Простенький скрипт последовательно выполняющий следующие операции: 

1)  чистка портов, 
2) обновление дерева портов,
3) обновление INDEX.db,
4) обновление базы данных пакетов,
5) поиск пакетов требующих обновления,
6) само обновление с помощью утилиты portupgrade (нужно установить, если её нет в системе).

 

#!/bin/sh

#########################################
# Created: Ohalnikov Oleg #
# Date: 2010-06-03 #
#########################################

portsclean -CDD;
csup -g -L 2 /etc/ports-supfile;
portsdb -Uu;
pkgdb -F;
pkg_version -v |grep "need";
echo ""
echo "Обновить -> (y/n)"
read a
          if [ $a = "y" ] || [ $a = "Y" ]; then
                  echo "Обновляемся..."
                  portupgrade -arR
          else if [ $a = "n" ] || [ $a = "N" ]; then
                  echo "Выход..."
                  exit
           fi
    fi

 

Скрипт на Perl.
Создаем файл ports.pl, делаем его исполняемым.

Содержание скрипта:
#!/usr/bin/perl
#----------------------------------------
# Created: Ohalnikov Oleg
# Date: 2010-11-25
# Support: http://unixa.ru
#----------------------------------------
system "(portsclean -CDD; csup -g -L 2 /usr/local/etc/ports-supfile; pkgdb -F; pkg_version -v |grep \"need\")";
print "Обновляемся?\n";
print "Да > \"y\", Нет > \"anykey\"\n";
$x=<STDIN>;
chomp ($x);
if ($x eq "y") {
system "(portupgrade -arR)";
} else {
print "Выход...\n";
  }

 

Выполняем
# ./ports.pl

(с)h ttp://unixa.ru/bsd/skript-obnovleniya-freebsd.html

Теги

Добавить комментарий

Ограниченный HTML

  • Допустимые HTML-теги: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Строки и абзацы переносятся автоматически.
  • Адреса веб-страниц и email-адреса преобразовываются в ссылки автоматически.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.