scripting

Продолжение темы о gtkdialog...

CORPSE аватар

И ещё небольшое дополнение. Для удобства мне хотелось, чтобы у меня была отдельная вкладка с кнопками, быстро запускающими сканирование выбранного ip адреса или получение его доменного имени. Это делается очень просто. Смотрите приложенный файл. Любая кнопка, содержащая в теге action имя внешней программы будет её активировать. Кстати, тегов action для любой кнопки может быть сколько угодно. Если в конце команды не поставить "&", то GUI будет "зависать", на самом деле ожидая завершения программы. Для вывода результата я буду использовать xterm. Во-первых, потому что он лёгкий и быстрый, а во-вторых, у него есть замечательный параметр -hold, который позволяет оставлять окно открытым после работы команды. Как говорится, дёшево и сердито. :)

В аттаче скриншот и код.

С чего начинается строка или ещё одна загадка bash'а...

CORPSE аватар

Как я раньше думал, строка должна начинаться, как и всё остальное - с начала.

Создаём GUI к скриптам лёгким движением руки или GTK на bash

CORPSE аватар

Доброго времени суток всем. Чистая консоль - это конечно же, очень хорошо и практически не требует вычислительных ресурсов, но часто мы жертвуем оными ради некоторой доли удобства. Чем я вчера и занялся. Поставил себе задачу частично автоматизировать и собрать в одну кучку средства решения некоторых задач, связанных с сетью, с которыми мне приходится сталкиваться на работе. В идеале это будет некая панель управления на GTK, работающая по принципу "нажми на кнопку - получишь результат". Начать решил со следующей задачи: периодически нужно сканировать подсети на предмет находждения свободных и занятых ip адресов, а у живых хостов проверять на открытость определённые порты, получать их мак и dns адреса и т.п..

Если хочешь быть здоров - сохраняйся и не слушай докторов...

CORPSE аватар

Я принёс вам ещё одну небольшую полезняшку, тоже связанную с резервным копированием. Давно ей пользуюсь и на работе и дома.

Иногда бывает, когда редактируешь какой-нибудь конфигурационный файлик, мысли о том, что надо было сначала сделать его резервную копию, приходят как-то после того, как ты его уже сохранил с изменениями, не оправдавшими твоих ожиданий. У кого такого никогда не было, может кинуть в меня чем-нибудь не очень тяжёлым. :) Так вот, однажды напоровшись на вышеобозначенные грабли, я решил избавиться от них раз и навсегда.

Принцип боевых действий: вместо редактора (я использую vim), запускаем скрипт, указывая в качестве параметра файл, который мы хотим отредактировать.

Пара полезных мелочей на баше

CORPSE аватар

Поделюсь парочкой небольших рюшечек и оборочек, написанных мной на досуге. :)

Например, выдёргивание случайной цитаты bash.org.ru:

#!/bin/bash

wget --timeout=5 --connect-timeout=5 -q -O - <a href="http://wapbash.org.ru/rnd.html" title="http://wapbash.org.ru/rnd.html">http://wapbash.org.ru/rnd.html</a> | sed '/(за сегодня)/,/(TOP-100)/!d;s/<p>/\n/g' | sed -e :a -e 's/<[^>]*>//g;/</N;//ba;1,2d;s/&quot;/"/g;s/&lt;/\</g;s/&gt;/\>/g' | sed -n '/^Еще случайная цитата$/,$!p'

Выдёргивание погоды для Перми на несколько дней:

#!/bin/bash

wget -q -O - <a href="http://www.nepogoda.ru/russia/perm/rss.xml" title="http://www.nepogoda.ru/russia/perm/rss.xml">http://www.nepogoda.ru/russia/perm/rss.xml</a> | iconv -f CP1251 -t UTF-8 | grep -E '(|)' | tail -n 24 | cut -d ">" -f 2- | cut -d "<" -f 1 | sed 's/Пермь: /\n/g' | grep -v -E '(NEPOGODA|прогноз)'

Использовать по вкусу.

RSS-материал