The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"(offtopic) скрипты и языки"
Отправлено Michael Shigorin, 20-Авг-12 01:39 
>>> В шелле есть другая, гораздо более значимая проблема:
>> Не-а.  То есть совсем мимо кассы.
> Нет.

Да.

>>Неправда, на чистом шелле можно сделать достаточно много -- почитайте исходники
>>http://altlinux.org/libshell или http://www.altlinux.org/control и удивитесь.
> Покажите в Debian.

В дебиане и этого нет, помнится.  Ссылки на git предложенного для чтения в качестве примера нетривиальных программ/блоков на shell устроят?

>> И часто Вы лично встречаете mc или там screengrab в *скриптах*?
> Как насчёт testdisk, например?

Никак, выкинул в пользу gpart при реальном столкновении с вопросом.  Встречный вопрос -- Вы пробовали скриптовать восстановление уничтоженной таблицы разделов?  Было бы крайне интересно узнать про обстоятельства, сподвигнувшие на такую автоматизацию.  Кроме шуток.

> Пример из практики - smartctl. Он знает про pipe?

Да, конечно.

> Чем разбирать его вывод?

Хоть grep или awk.  И спасибо, почитал про -f brief (хотя сделать ещё и приспособенный для машинного разбора формат и зафиксировать его было бы совсем хорошо).

Вот пример из жизни:

#!/bin/sh

smartquery() {
                smartctl -d ata -a /dev/sd$1 2>&1 \
                | egrep "$PAT" \
                | while read line; do
                        echo "sd$1: $line"
                done
}

tempquery() {
                echo -n "sd$1: "
                hddtemp -nq /dev/sd$1
}

#DISKS="a b c d e f g h"
DISKS="b c d e f g h i"
PAT="UDMA_CRC_Error_Count|Reallocated_Event_Count|Offline_Uncorrectable"
PAT="$PAT|Current_Pending_Sector|Raw_Read_Error_Rate|Seek_Error_Rate"

echo "querying... "
for i in $DISKS; do smartquery $i; done | grep -v " 0$" | sort
echo
echo "temperatures... "
for i in $DISKS; do tempquery $i; done | sort -rnk2

> Над программой с псевдографикой не написать ничего на шелле.

Как автор одной из mc extfs выражаю крайнее удивление.

> Внешние шеллу программы могут иметь другую политику.

Вы о чём?  Не всякая программа годится для работы в конвейере -- это очевидно и в повторении не нуждается.  И доводом не является, поскольку существуют пригодные для такой работы программы.

> Glue можно разные вещи - как программы с почти естественным языком на
> выходе, так и вполне себе библиотеки с уже разложенными по структуре
> данными. Сложность при этом разная. Максимально возможный результат
> за одинаковое время - тоже.

Спасибо, лейтенант.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру