sh

Очень большой проект 2010

Очень большой проект

Проект, на котором я был занят с июля 2008 года, как устроился в SperaSoft Inc.. Система проекта представляет собой распределенную систему сбора метрик от активных агентов. В системе условно выделяют серверную и несколько клиентских частей.
Серверная часть отвечает за сбор метрик, авторизации агентов и пользователей, back-end администрирующей подсистемы и написана, преимущественно, на c++ (boost, gSOAP, libxml, OpenSSL) и кроссплатформенна.

Konqueror your man

##
# Manual browsing
# Konqueror can show you man pages as well html
# @author Andrey Zakharov /aka Vaulter/ 
# @author ramok 
man()
{
    [ -n "$DISPLAY" ] &&  konqueror "man:/$*" 2>/dev/null & ||  man $*
}

Google search from command line

##
# Perform google search from command line
# <usage>g well linux c%2b%2b engineer</usage>
# @TODO url decode
g() {
    if [ -n "$DISPLAY" ] && 
        env x-www-browser "http://www.google.com/search?hl=${LANG%%_*}&q=$*" & ||
        env www-browser "http://www.google.com/search?hl=${LANG%%_*}&q=$*"
}

Bookmarked linux shell commands

Just useful for me some stuff

bash colour prompt

in
# set a fancy prompt (non-color, unless we know we "want" color)

Process memory vmsize report

in
#!/bin/sh
mu=0
pr=$1
[ -n "$pr" ] || ( echo "procMemVmSize / Andrey Zakharov 2009 / usage: $0 <pid>" >&2; exit 1 )
pids=`pgrep $1`
 
for p in $pids; do
 
    let "mu = $mu + `cat /proc/$p/status |  grep VmSize | awk '{ print $2 }'`" #kB
 
done
 
let "mu = $mu * 1024"
 
echo $mu

скрипт pppoe дозвона

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

#!/bin/bash
#kdialog --title test --textbox 
timeout=10
sleep=20
#test url
url=ya.ru 
if [ $1 ]
then
    kdialog --msgbox "type kill $$ to stop infinite loop" &
    while [ 1 == 1 ] 
    do

ProxyCheck

in

Это простенькая утилитка проверки списков проксей. Списки могут подаватся в скрипт как указанием файла (правда придется править в скрипте) или
через поток ввода (STDIN). Соответсвенно самое простое использование

[root@localhost ~]# cat proxy.txt | ./proxycheck.php

где proxy.txt просто список вида

адрес:порт
адрес:порт
адрес:порт

результат проверки выводится в указанный файл или в STDOUT, например если имеем файл proxy.txt

200.65.127.161:3128
200.65.127.161:80
12.110.129.186:7212
211.242.42.52:80
80.58.205.61:80
81.140.160.17:3128
RSS-материал