🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.os.advocacy
Article #2642

Re: Word strony (nie)parzyste

#2642
From: Jacek P. Szymanski
Date: Fri, 23 Jan 1998 10:16
146 lines
5989 bytes
on Thu, 22 Jan 1998 23:49:41 GMT, Marcin Wieczorek wrote:
|jps@burek.buda.pl (Jacek P. Szymański) napisał(a):
|*Ogólnie. To całe OLE to nawet niezły pomysł. Brakuje mi jednak w
|*Windach _prostych_ mechanizmów do _prostych_ czynności. Podam tu
|*bardzo prosty przykładzik: stoi sobie kilka komputerków które
|*mają cały czas chodzić i być widoczne w sieci, a że ja jestem
|*człowiek z natury leniwy, napisałem sobie skrypcik, który te
|*komputerki pinga i jak któryś padł to mnie o tym zawiadamia. Jak
|*któryś dotąd leżał i wstał to też mnie o tym informuje. Te
|*wszystkie informacje są ładowane w jeden komunikat. Cały skrypcik
|*zajmuje coś koło kilobajta a napisałem go w parę minut bo akurat
|*był potrzebny. Użyłem w nim poleceń: ping, cat, awk, grep, mail,
|*test, date. Reszta to mechanizmy i polecenia shella.
|
|No to go pokaz zobaczymy czy taki on prosciutki. :-)

Proszę bardzo, skrypt jest Quick-and-Dirty i dałoby się go
napisać dużo lepiej i jeszcze krócej :-) w tej postaci ma 831
bajtów ;-P

--------Skrypt:
#!/bin/sh

#
function TestIt ()
{
 if [ -f /var/run/hosts/$1 ]; then
  if [ "`ping -c 10 -i 6 -q $1 | grep packet | awk ' { print $4 } '`" 
!= "0" ]; then
   echo `date`: $1 zyje >> /var/run/hosts/.Yyy.mailfile
   rm -f /var/run/hosts/$1
  fi
 else
  if [ "`ping -c 10 -i 6 -q $1 | grep packet | awk ' { print $4 } '`" 
= "0" ]; then
   echo `date`: $1 zdechl >> /var/run/hosts/.Yyy.mailfile
   touch /var/run/hosts/$1
  fi
 fi
}

# Start

if [ ! -r /etc/TestedHosts ]; then
 echo "Nie ma pliku /etc/TestedHosts." | mail root
 exit
fi

if [ -f /var/run/hosts/.Yyy.mailfile ]; then
 exit 1;
fi

touch /var/run/hosts/.Yyy.mailfile

for komputerek in `cat /etc/TestedHosts`; do
 TestIt $komputerek
done


if [ -s /var/run/hosts/.Yyy.mailfile ]; then
 cat /var/run/hosts/.Yyy.mailfile | mail root
fi

rm -f /var/run/hosts/.Yyy.mailfile
--------Koniec.

|A po co uzyles awk skoro shell jest taki powerfull ? :-)

Bo jak zwykle zapomniałem składni cut, a mana nie chciało mi się
czytać :-)
Poza tym sam shell nie zapewnia narzędzi do obróbki tekstów ani
nic takiego. Jak widzisz oprócz tych programów, które wymieniłem
wcześniej użyłem jeszcze rm i touch.
A teraz będę złośliwy: napisz skrypt/program pod Windows który
będzie robił to samo, podobnie jak u mnie może nie być obsługi
błędów i to wszystko za pomocą dowolnych narzędzi które
przychodzą razem z _instalką_ Windows (może być NT :-) albo
potwierdź: NIE DA SIĘ a będzie wiadomo co jest lepsze :-P

|*Ciekawi mnie teraz jakbym to samo mógł zrobić gdybym (odpukać)
|*był administratorem jakiegoś NT. "Interpreter skryptów" w NieTym
|*nie pozwala mi na zastosowanie tak trywialnego mechanizmu jak:
|
|Nie moglbys bo o ile wiem to z pingiem dostarczanym z NT nie dogadasz
|sie przez OLE. Tez nad tym boleje :( Ale czy nie rozumiesz, ze OLE

To jak mam go użyć w automacie? Kompilować takie starocie jak
awk? Przecież to niepoważne :-) NT ponoć jest nowoczesnym
systemem a czegoś tak trywialnego się nie da zrobić?
(przypominam: instalka).

|wogole nie ma sensu jesli nie ma programow go obslugujacych ? Aby
|uproscic dyskusje podam klika punktow:
|
|1. OLE jest wspaniale ach i och.

Na pewno ma bardzo duże możliwości, ale IMHO do tak prostych
rzeczy jak automatyczne wysłanie pocztą wiadomości nie warto
wytaczać aż takich armat ;-) Powinny być narzędzia o mniejszych
możliwościach ale za to z dużo prostszą obsługą, niekoniecznie
musi być to akurat linia poleceń, ale powinno być to mniej więcej
tak proste jak 'mail root < Yyy'. OLE zostawmy do rzeczy nieco
bardziej skomplikowanych.

|2. Niestety nie kazdy program obsluguje OLE

ale i nie zawsze OLE jest potrzebne.

|3. Gdyby kazdy program Windowsowy obslugiwal OLE to skrypt Linuksowy
|moglby sie schowac.

Ciekawe jakbyś z OLE napisał odpowiednik mojego powyższego
skryptu... i czy miałby on mniej niż 50k

|4. Poki co w Linuksie wiecej rzeczy da sie zautomatyzowac bo wiekszosc
|programow ma interfejs linii komend.

...i między innymi dlatego wolę Linuxa. Także dlatego, że ta
automatyzacja jest o wiele prostsza.

|Wniosek:
| Trzeba pisac wiecej programow narzedziowych z interfejsem OLE. 

Trzeba napisać (pod Windą, pod Linuxem już jest) programy
narzędziowe obsługujące jakiś znacznie prostszy interfejs, na
przykład linia poleceń/stdin/stdout ale niekoniecznie.

|*I tu zaczyna się dopiero problem... bo w Win muszę mieć OLE i
|*mailera który to obsługuje i jeszcze muszę napisać program w
|*jakimś WordBasicu który to zrobi... a pod Linuxem to takie
|*proste...
|
|Niekoniecznie w WordBasicu. W czymkolwiek obslugujacym OLE. Mozesz
|nawet w perlu.

Będę złośliwy: to napisz jak a zobaczymy co jest prostsze i
lepsze...

|Marcin Wieczorek ( T-1000 )

-- 
Jacek P. Szymański         | Bad dreams in the night
Network Administrator at   | They told me
BoTar Internet             | I was going to lose the fight
jps@bti.pl                 | Leave behind my wuthering, wuthering
#include <disclaimer.h>    | Wuthering Heights.
Technical Details
Message-ID: <slrn6cgs0u.oo6.jps@home.bti.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!jps
References: <Pine.LNX.3.96.980119224520.5516B-100000@qrnik.knm.org.pl> <34cd9d53.10215919@news.nask.org.pl> <oqn2grmgkj.fsf@lipa.mimuw.edu.pl> <34c8fec2.100694911@news.nask.org.pl> <Mi$IE6ccu3f.nmp.jps@burek.buda.pl> <34cbd3c0.32158030@news.nask.org.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!jps
From: jps@burek.buda.pl (Jacek P. Szymanski)
Newsgroups: pl.comp.os.advocacy
Subject: Re: Word strony (nie)parzyste
Date: 23 Jan 1998 10:16:41 GMT
Organization: BoTar Internet
Lines: 146
Message-ID: <slrn6cgs0u.oo6.jps@home.bti.pl>
References: <Pine.LNX.3.96.980119224520.5516B-100000@qrnik.knm.org.pl> <34cd9d53.10215919@news.nask.org.pl> <oqn2grmgkj.fsf@lipa.mimuw.edu.pl> <34c8fec2.100694911@news.nask.org.pl> <Mi$IE6ccu3f.nmp.jps@burek.buda.pl> <34cbd3c0.32158030@news.nask.org.pl>
NNTP-Posting-Host: home.bti.pl
Mime-Version: 1.0
X-Newsreader: slrn (0.9.4.3 UNIX)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit