Kategorie
Bez kategorii

wiki potrzebna od zaraz

Jak liczba obsługiwanych maszyn zrobi się większa niż jeden (lub dwadzieścia, jak to woli) to warto by było gdzieś zapisać pewne rzeczy związane z działaniem skryptów, konfiguracją usług oraz wielu innych ważnych i mniej ważnych rzeczy. Oczywiście można wszystko trzymać w plikach, a pliki w repozytorium, ale przy osiągnięciu pewnej masy zapisanych informacji zaczynają się trudności w dostępie do zgromadzonej wiedzy, szczególnie, że serwerów i usług raczej przybywa niż ubywa. Wydaje się, że rozwiązaniem jest postawienie wiki. I tak właśnie się stało, choć z przygodami.

Po pierwsze wiki to raczej filozofia budowy strony i trzymania informacji, a nie konkretne rozwiązanie programistyczne, co odkryłem z pewnym zdziwieniem, próbując dobrać taki soft, który spełniałby nasze wymagania. Na początek miało to być perlowe i pracować z postgresem. Korzystając ze strony Wiki Choice Wizard i wyklikując pracowicie poszczególne wymagania w pewnym momencie osiągnąłem grala: na liście pozostał tylko jeden soft o wdzięcznej nazwie mojomojo. Spełniało wszystkie wymagania a dodatkowo najmilsza możliwa licencja: BSD.

Instalacja poszła jak z płatka, problemy zaczęły się po chwili i były związane z założeniami. Na serwerze usługi są rozdzielone pomiędzy chrooty. W tej sprawie interesują nas 2 z nich. Pierwszym chrootem jest chroot zwany głównym webowym, w których działa nginx jako serwer proxujący. Założeniem było również to, że ma proxować urla do serwera działającego w innych chroocie na losowym porcie (bezpieczeństwo), czyli serwis pracujący w domena/wiki znajduje się na innym serwerze. Konfiguracja wygląda następująco:

Kategorie
Bez kategorii

konwersja napisu na numer telefonu

Chciałem poszukać sobie numeru komórki który będzie jakimś fajnym napisem. Nie chciało mi się tego napisu „konwertować” patrząc na klawiaturę telefonu. Nie chciało jak diabli.

#!/usr/bin/perl -w
use strict;
if ( @ARGV ) {
    my $number = '';
    foreach my $o ( @ARGV ) {
        print $o;
        my @data = split '', '22233344455566677778889999';
        map { my $c = ord lc $_;$number .= $c > 57 ? $data[ $c - 97 ]:$_ } split '', lc $o;
        $number .= ' ';
    }
    print ': ' . $number;
}
else {
    print 'usage: convert.pl string';
}
print "\n";

pobierz plik: konwersja-napisu-w-numer.pl