Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Prawdę powiedziawszy o tym nie pomyślałem :) ale.....
[quote="man usermod"]-l, --loginNOWY_LOGIN
The name of the user will be changed from LOGIN to NEW_LOGIN. Nothing else is changed. In particular, the user's home directory name should probably be changed manually to reflect the new login name.[/quote]
A to "cudo" z postu powyżej robi wszystko łącznie ze zmianą nazwy katalogu ;) Może naokoło ale jednak :)
Offline
RapidGate jest to napisana w pythonie bramka do kont premium na rapidshare, działa to tak, że np. nie chcesz dawać nikomu danych do twojego konta rapidshare a chcesz mu umożliwić ściąganie przez nie plików, wystarczy wrzucić ten skrypt gdzieś gdzie może być wykonany przez serwer WWW (np. /cgi-bin/), ustawić login hasło i ścieszkę do pythona i już można używać podając adres URL:
http://twoj_serwer.domena/katalog/rapidgate.py?url=http://rapidshare.com/files/66666/jakis_plik.ext
Kod skryptu dostępny tutaj: http://wklej.ciasny.net/2967
Offline
Właśnie klepię sobie programik do wyliczania spalania paliwa w moim samochodzie.
Nie ma co go kitrać na dysku, więc postanowiłem się podzielić (a może akurta komuś się uda ;P).
Paczka dostępna tutaj : [url]http://sourceforge.net/projects/autonotessamoch/[/url]
Jest jeszcze kilka rzeczy których nie jestem w stanie objeść:
Podczas tworzenia paczki mam w pliku menu wpis
?package(autonotes):needs="X11" section="Applications/Data Management"\ title="Autonotes" command="/usr/bin/autonotes"
Jenak po zainstalowaniu paczki nie mam w menu programiku.
(w pliku menu odhaszowałem dh_installmenu).
Programik odpala się klepiąc w konsoli "autonotes".
Program napisany w C# (mono), więc pewnie będzie trzeba doinstalować ze 2 paczuszki (podczas tworzenia paczki jakoś umknęło mi zrobienie zależności).
Offline
Jako, że dużo przez torrenty ściągam i bywa, że zostawiam kompa na noc a rano jak wstaje widzę, że za dużo się nie wysłało to napisałem skrypt który przy braku aktywności uploadu w naszym kompie samoczynnie wyłącza komputer:
#!/bin/bash tx=$(cat /proc/net/dev | grep eth0 | awk '{print $9}') liczba=0 warunek=0 while [ $warunek == 0 ]; do ifstat -q 3 10 | awk 'NR > 2 {print $2}' > lista for x in $(cat lista) do INT=${x/.*} if [ $INT -lt 3 ]; then liczba=$[liczba + 1] fi done echo $liczba if [ $liczba == 10 ]; then echo -e "KABOOOOOM" warunek=1 else liczba=0 sleep 10m fi done tx1=$(cat /proc/net/dev | grep eth0 | awk '{print $9}') tx=$[tx1-tx] echo $tx date > KONIEC env LANG=C printf "%.2f" `echo $tx/1024/1024 | bc -l` >> KONIEC shutdown -h now
Skrypt sprawdza co 10min czy upload wynosi mniej niz 3Kb. Jeśli tak to zapisuje datę oraz godzinę zamknięcia kompa, oraz ilość Mb wysłanych do pliku KONIEC który znajduje się w katalogu ze skryptem.
Oczywiście jeśli ktos używa innego interfejsu na świat niż eth0 to należy to zmieniś w 2ch miejscach w skrypcie. Należy również zainstalować malutki program ifstat.
Mam nadzieje że komuś się przyda
Ostatnio edytowany przez giegiel (2009-09-12 13:28:41)
Offline
[quote=giegiel]
#!/bin/bash tx=$(cat /proc/net/dev | grep eth0 | awk '{print $9}') liczba=0 warunek=0 while [ $warunek == 0 ]; do ifstat -q 3 10 | awk 'NR > 2 {print $2}' > lista for x in $(cat lista) do INT=${x/.*} if [ $INT -lt 3 ]; then liczba=$[liczba + 1] fi done echo $liczba if [ $liczba == 10 ]; then echo -e "KABOOOOOM" warunek=1 else liczba=0 sleep 10m fi done tx1=$(cat /proc/net/dev | grep eth0 | awk '{print $9}') tx=$[tx1-tx] echo $tx date > KONIEC env LANG=C printf "%.2f" `echo $tx/1024/1024 | bc -l` >> KONIEC shutdown -h now
[/quote]
tx=$(cat /proc/net/dev | grep eth0 | awk '{print $9}')
wystarczy:
tx=$(awk '/eth0/ {print $9}' /proc/net/dev)
___
if [ $liczba == 10 ]; then
lepiej:
if [ "$liczba" -eq 10 ]; then
___
echo -e "KABOOOOOM"
zbędna flaga [tt]-e[/tt]
Offline
Ooo dzięki ;D miło, że ktoś się doczepił :) na to liczyłem ale zapomniałem napisać.
Offline
Jeszcze jedna uwaga:
Oczywiście jeśli ktos używa innego interfejsu na świat niż eth0 to należy to zmieniś w 2ch miejscach w skrypcie.[/quote]
Na początku zdefiniuj zmienną [tt]INTERFACE=eth0[/tt] i jej używaj, wtedy wystarczy zmienić tylko w jednym miejscu.
Błogosławieni, którzy czynią FAQ.
[url=http://www.opencaching.pl]opencaching[/url] :: [url=http://dug.net.pl/sources.list]debian sources.list[/url] :: [url=http://www.linuxportal.pl/blogi/azhag/wpisy]coś jakby blog[/url] :: [url=http://dug.net.pl/]polski portal debiana[/url] :: linux user #403712
Offline
Jak wiadomo conky nie radzi sobie z sprawdzaniem poczty przez IMAP po SSL, dlatego też napisałem taki prosty skrypcik w pythonie do tego:
#!/usr/bin/env python # -*- coding: utf-8 -*- import sys, imaplib, string def main(argv): if len(argv) != 6: print "Usage: " + argv[0] + " host port login password useSSL" sys.exit(1) host = argv[1] port = int(argv[2]) username = argv[3] password = argv[4] useSSL = int(argv[5]) try: if useSSL: imap = imaplib.IMAP4_SSL(host, port) else: imap = imaplib.IMAP4(host, port) imap.login(username, password) imap.select() except: print "Connection error" sys.exit(2) data = imap.search(None, 'UNSEEN') messages = data[1][0].split(' ') if not messages[0]: print "0" else: print len(messages) imap.logout() sys.exit(0) if __name__ == "__main__": main(sys.argv)
[url=http://wklej.ciasny.net/3376][i]Wersja orginalna[/i][/url]
Wymagany python i imaplib ;)
Użycie jest bardzo proste, odpalamy skrypt z parametrami a w wyniku mamy ilość nieprzeczytanych wiadomości na standardowym wyjściu ;)
Co do wykorzystania w conkim u mnie wygląda to tak:
~/.skrypty/mail.sh
#!/bin/sh put_mails() { if [ "$1" -gt "0" ]; then if [ "$1" -eq "1" ]; then echo "\${color}${1} nowa wiadomość" elif [ "$1" -lt "5" ]; then echo "\${color}${1} nowe wiadomości" else echo "\${color}${1} nowych wiadomości" fi else echo '${color2}Brak nowych wiadomości' fi } # 1. GMAIL GMAIL=$(~/.skrypty/checkmail.py imap.gmail.com 993 xxxxxx@gmail.com 'xxxxxxx' 1) # 2. Lanox LANOX=$(~/.skrypty/checkmail.py mail.lanox.pl 143 xxxxxx@lanox.pl 'xxxxx' 0) # 3. dug.net.pl DUG=$(~/.skrypty/checkmail.py dug.net.pl 143 xxxxxxx@dug.net.pl 'xxxxxxxx' 0) echo '${color1}${alignc}Poczta' echo -n '${color2}gmail.com: ' put_mails ${GMAIL} echo -n '${color2}lanox.pl: ' put_mails ${LANOX} echo -n '${color2}dug.net.pl: ' put_mails ${DUG}
~/.conkyrc
${execpi 60 ~/.skrypty/mail.sh}
Offline
[quote=Bodzio]Na wine też pewnie pójdzie, tylko trzeba skopiować cały katalog zainstalowany na windzie, a potem odpalić przez wine plik pp2.exe[/quote]
niestety Płatnik po skopiowaniu nie idzie na wine :(
Jest to w zasadzie jedyna rzecz oprócz Buchaltera która zmusza mnie do posiadania Windows :(
Offline
Dla używających Wordpressa i NextGen Gallery, takie małe cudo by winnetou: [url]http://valhalla.org.pl/wordpress-random-image/[/url]
Offline
Ok, nie wiem czy to się nadaje oraz wiem że na elektrodzie było już kilka takich projektów ale...
Chciałbym pokazać prezent jaki niedługo dostanie moja luba ;)
Jest to drzewko szczęścia wykonane z starej szkatułki (zabranej mamie ;P), skrętki komputerowej (zabranej szefowi :P) oraz kulek po dezodorantach (zbieranych przez mamę, wspomnianą już lubą oraz kilku znajomych). na końcach skrętki przylutowane diody LED RGB. Każda dioda została "osłonięta" kulką z dezodorantu. Dodatkowo do szkatułki upchnąłem trochę elektroniki. Podstawowym elementem jest procesor atmega 8. Diod led jest 12, aby sterować taką ilością wykorzystuję 12 + 3 wyjścia procesora (1 wyjście na kolor oraz 1 załączające zasilanie). Diody są zapalane jedna po drugiej z taką szybkością aby wyglądało że świecą w sposób ciągły. Dodatkowo drzewko zostało wyposażone w mikrofon oraz wzmacniacz, podłączony do wejścia przetwornika analogowo-cyfrowego atmegi. Dzięki temu w jednym z trybów świecenia, cały drzewko działa jak analizator widma dźwięku ;). Poza tym do przełączania trybów pracy został wykonany przycisk dotykowy oparty o układ NE555.
Ok dość gadania, kilka zdjęć (za jakość przepraszam ;P):
[img]http://mhroczny.abuser.eu/pub/drzewko/2011-07-20%2021.23.07.jpg[/img]
[img]http://mhroczny.abuser.eu/pub/drzewko/2011-07-20%2021.23.23.jpg[/img]
[img]http://mhroczny.abuser.eu/pub/drzewko/2011-07-20%2021.24.02.jpg[/img]
[img]http://mhroczny.abuser.eu/pub/drzewko/2011-07-20%2021.31.27.jpg[/img]
oraz filmików (nagrane maszyną do pisania):
http://www.youtube.com/watch?v=taaUP5Clw68
http://www.youtube.com/watch?v=3JhG_xgqC6Q
// EDIT:
Schemat ideowy: http://mhroczny.abuser.eu/pub/drzewko/schemat.png
i wersja z eagle: http://mhroczny.abuser.eu/pub/drzewko/schemat.sch
UWAGA: C15 należy dobrać w zależności od zastosowanego przycisku dotykowego, u mnie skończyło się na 100nF
Kod źródłowy na ATMEGA 8: http://mhroczny.abuser.eu/pub/drzewko/drzewko.tar.gz
funkcja do szybkiej transformaty fouriera napisana w assemblerze pochodzi z avrfreaks. Wysłana wersja kodu działa z kwarcem 8MHz a nie 14 ;)
Projektu płytki nie udostępniam bo nie mam finalnej wersji, a nie chce żeby komuś się coś spaliło z mojej winy.
Pozdrawiam.
Ostatnio edytowany przez milyges (2011-07-22 12:20:47)
Offline
Czad. Jak to zrobić? ;] Też bym komuś sprezentował, przy okazji jedno sobie ;]
Offline
Schemat przez przypadek skasowałem częściowo, jak się odkopę z robotą to wrzucę schemat + projekt płytki oraz kod w C dla atmegi. W sumie to kod mogę jutro dać, bo jeszcze parę poprawek muszę zrobić.
A sobie też chciałem zrobić coś takiego na biurko, ale chyba zrobię sobie kostkę z ledów :P (np. coś takiego http://www.youtube.com/watch?v=6mXM-oGggrM). Tylko ledy drogo wyjdą :/
Offline
Najs, kostka potem, najpierw drzewko, prostsze ;]
Offline
Autko sterowane telefonem z androidem (na podstawie odczytu z akcelerometru telefonu) przez bluetooth. Sercem płytki sterującej jest Atmega16L, komunikująca się poprzez USART z modułem bluetooth BTM 222. Jako mostek H do silników wykorzysany został układ L298. Dodatkowo dodane 2 białe LEDy jako światła przednie.
Soft na androida napisany w tfu tfu Java (jak koledzy oddadzą projekt wrzucę kody ;))
[img]http://mhroczny.abuser.eu/pub/autko/PICT0477.JPG[/img]
[img]http://mhroczny.abuser.eu/pub/autko/PICT0478.JPG[/img]
[img]http://mhroczny.abuser.eu/pub/autko/PICT0479.JPG[/img]
[img]http://mhroczny.abuser.eu/pub/autko/PICT0483.JPG[/img]
Schemat:
http://mhroczny.abuser.eu/pub/autko/autko_schemat.png (stabilizatory powinny być inne, ale robiłem na tym co mi koledzy dostarczyli ;))
Kody AVR+Android:
http://mhroczny.abuser.eu/pub/autko/autko.tar.bz2
Offline
Filmik jak jeździ!
Kiedy seryjna produkcja? ;)
Offline
Że tak spytam...
1. Technikalia
a) To "nowy" profil Bluetootha? "ToyRemoteControl" (TRC) [innymi słowy - wzięło się socket i napisało]
b) Użyto profilu HID
c) Użyto profilu AVRCP
d) Android@Home i inne tym podobne?
(jak android to pewnie po RFCOMMie zrobione - to mój typ)
2. Może uzyska homologacje bo są światła przednie. Jednakże implikuje to pytanie o migacze oraz światła stopu... No właśnie... Ten samochodzik ma hamulec czy standardowo nikt o tym nie pomyślał i jest tylko gaz do dechy? (polecam to zrobić... kto wie... To później może wyewoluować w profil sterowania normalnym samochodem... APP (AutoPilotProfile)
Offline
1. RFCOMM napisane na BluetoothSocket,
2. Hamulec jest... albo raczej wsteczny który działa jak hamulec. Z racji że to projekt dla kolegi nie chciałem szaleć z funkcjonalnością. Dla siebie zrobię coś bardziej rozbudowanego ;)
Filmik później dam bo rozładowałem baterie na razie :D
Offline
#!/bin/bash DIRECTORY="$HOME/.txtburn" VOLNAME="txtburn" ISONAME="txtburn.iso" DEVICE="/dev/sr0" MAXSPEED="4" BUFFERSIZE="14" echo "Witaj w programie txtburn, prprawdopodobnie najmniejszej na świecie aplikacji do nagrywania płyt." echo "Co teraz zamierzasz zrobić? Wybierz jedną z poniższych opcji:" echo "1 - Utwórz obraz ISO z plików na HDD" echo "2 - Utwórz obraz ISO z zawartości płyty" echo "3 - Wykonaj kopię płyty" echo "4 - Nagraj obraz na płytę" echo "5 - Utwórz płytę z danymi" echo "6 - Zweryfikuj poprawność danych" echo "7 - Wyczyść płytę wielokrotnego zapisu (CD-RW)" echo "8 - Wyjdź" read d case "$d" in "1") genisoimage -J -o $DIRECTORY/$ISONAME -R -V $VOLNAME $DIRECTORY ;; "2") echo "Włóż dysk do napędu i naciśnij Enter..."; read && dd if=$DEVICE of=$DIRECTORY/$ISONAME ;; "3") echo "Włóż dysk do napędu i naciśnij Enter..."; read && dd if=$DEVICE of=$DIRECTORY/$ISONAME && eject $DEVICE && echo "Obraz jest gotowy do nagrania. Teraz włóż czystą płytę i naciśnij Enter."; read && wodim -v -dao -eject speed=$MAXSPEED fs=$BUFFERSIZE dev=$DEVICE $DIRECTORY/$ISONAME ;; "4") wodim -v -dao -eject speed=$MAXSPEED fs=$BUFFERSIZE dev=$DEVICE $DIRECTORY/$ISONAME ;; "5") genisoimage -J -o $DIRECTORY/$ISONAME -R -V $VOLNAME $DIRECTORY && wodim -v -dao -eject speed=$MAXSPEED fs=$BUFFERSIZE dev=$DEVICE $DIRECTORY/$ISONAME ;; "6") cdck -d $DEVICE -v -t ;; "7") sudo umount $DEVICE && wodim -v dev=$DEVICE -eject blank=fast ;; "8") echo "Wychodzę z programu." ;; esac
Takie coś wyskrobałem do nagrywania płytek ^_^
Może się komuś przyda.
Offline
#!/bin/sh #wymaga gxmessage gxmessage -center -name "Repozytoria" -buttons Pokaż:2,Edytuj:1,Zamknij:0 "Co zrobić z repozytorium?" wynik="$?" if [ "$wynik" -eq "1" ]; then xterm -e "sudo nano /etc/apt/sources.list" elif [ "$wynik" -eq "2" ]; then xterm -e "nano /etc/apt/sources.list" else exit fi
prosty skrypt którego w połączeniu z skonfigurowany sudo używam do zarządzania repozytoriami
Offline
@dominbik, Przy "pokaż" zamiast nano nie wystarczyłoby dać "cat /etc/apt/sources.list"? Poza tym skrypt OK, kiedyś miałem podobne wpisy (pokaż/edytuj sources.list) w menu Fluxboxa, jak jeszcze miałem Debiana (zgadza się, zdradziłem najlepszy system na świecie).
Offline
chciałem cat lecz nie kolorowało mi składni
#!/bin/sh #wersja poprzedniego xdg-open - aptitude reinstall xdg-open #wymaga gxmessage if [ "$(grep -c 'open_generic "\$url"' /usr/bin/xdg-open)" = "1" ] then sed -e 's/open_generic "\$url"/rox "\$url"/' -i /usr/bin/xdg-open if [ "$(grep -c 'rox "\$url"' /usr/bin/xdg-open)" = "1" ]; then echo "Pomyślnie ustawiono xdg-open dla Rox-Filer!" #message="Pomyślnie ustawiono xdg-open dla Rox-Filer!" #gxmessage -center -name "Przystosowanie xdg-open dla Rox-Filer" -buttons OK:1 "$message" else echo "Niepowodzenie przy zapisie ustawień!" #gxmessage -center -name "BŁĄD" -buttons Zamknij:1 "Niepowodzenie przy zapisie ustawień!" fi else echo "BŁĄD w identyfikacji celu edycji" #message="BŁĄD w identyfikacji celu edycji" #gxmessage -center -name "BŁĄD edycji" -buttons Zamknij:1 "$message" fi
do przystosowania xdg-open do Rox-Filer (po aktualizacjach xdg-utils odpalam)
Ostatnio edytowany przez dominbik (2012-02-07 23:17:12)
Offline
[quote=dominbik]
if [ "$(grep -c 'open_generic "\$url"' /usr/bin/xdg-open)" = "1" ] then sed -e 's/open_generic "\$url"/rox "\$url"/' -i /usr/bin/xdg-open
[/quote]
[url]http://minio.jogger.pl/2009/11/21/popularne-bledy-popelniane-podczas-pisania-skryptow-powloki/#liczenie-linii[/url]
Właściwie to się da samym sed-em, bez tego wyrażenia warunkowego, ale to już zostawiam jako pracę domową.
Offline
Napisałem prosty skrypcik do wyłączania (może komuś się przyda). Wykrywa zalogowanych użytkowników (również po ssh) i jeżeli >1 to, by wyłączyć komputer potrzebne jest hasło roota (robi w domu jako desktop i nxserver)
w /etc/sudoers (mogą wyłączyć wszyscy z grupy hibersusp):
%hibersusp stacjonarny = NOPASSWD: /usr/share/silnik/mlogged.sh
mlogged.sh
#!/bin/bash usr=(tomek jedrzej monika root) acc=("shutdown -h now" "shutdown -r now" "pm-hibernate" "pm-suspend") ############################## wish=$1 for ((n=0; n<${#usr[@]}; n++)); do if users | grep ${usr[n]} >> /dev/null; then ((noflog++)); fi; done if [ $noflog -gt 1 ]; then echo $noflog; else for ((n=0; n<${#acc[@]}; n++)); do if [ "$wish" == "${acc[n]}" ]; then exec $wish fi done;fi
#!/bin/sh if [ `bash mlogged.sh` ]; then message="Na komputerze wykryto inne zalogowane osoby." gxmessage -center -name "Wyłączenie Komputera" -buttons "Wylacz mimo to":1,Zamknij:0 "$message" wynik="$?" if [ "$wynik" -eq "1" ]; then gksudo "shutdown -h now" elif [ "$wynik" -eq "0" ]; then exit fi else message="Czy na pewno chcesz wyłączyć komputer?" gxmessage -center -name "Wyłączenie Komputera" -buttons Tak:2,Nie:1,Restart:0 "$message" wynik="$?" if [ "$wynik" -eq "2" ]; then sudo /usr/share/silnik/mlogged.sh "shutdown -h now" elif [ "$wynik" -eq "1" ]; then exit elif [ "$wynik" -eq "0" ]; then sudo /usr/share/silnik/mlogged.sh "shutdown -r now" fi fi
w działaniu; http://www.youtube.com/watch?v=oX3AwbgoBzg
nie wiem tylko czy jest to bezpieczny skrypt - do mlogged.sh (które można uruchomić jako root przez sudo bez hasła) można przekazać wszystko.
if [ "$wish" == "${acc[n]}" ]
ale z tego co sprawdzałem to wyżej wystarcza do filtracji. (wykona tylko polecenia określone w tablicy acc).
Ostatnio edytowany przez dominbik (2012-03-03 17:55:39)
Offline
Time (s) | Query |
---|---|
0.00011 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00116 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.135.184.195' WHERE u.id=1 |
0.00108 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.135.184.195', 1732356110) |
0.00046 | SELECT * FROM punbb_online WHERE logged<1732355810 |
0.00086 | SELECT topic_id FROM punbb_posts WHERE id=127922 |
0.00006 | SELECT id FROM punbb_posts WHERE topic_id=857 ORDER BY posted |
0.00065 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=857 AND t.moved_to IS NULL |
0.00005 | SELECT search_for, replace_with FROM punbb_censoring |
0.01763 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=857 ORDER BY p.id LIMIT 75,25 |
0.00144 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=857 |
Total query time: 0.02354 s |