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!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2005-10-22 13:09:48

  maverick44 - Moderator

maverick44
Moderator
Skąd: Częstochowa
Zarejestrowany: 2005-08-30
Serwis

Skrypcik w perlu

Witam!
Pisze sobie universalny skrypcik w perlu do wysylania karteczek winpopup no i natknalem sie w perlu na to ze chce wynik polecenia systemowego wpisacw zmienna ale co mi nie wychodzi:

Kod:


 $komp = `nmblookup -A "$ip" |grep -v "<GROUP>" | awk '($2 == "<00>") {print $1}' | tr -d 'n'` ;
 
 printf "$komp n" ;

zmienna ip jest zadeklarowana wczesniej, pod zmienna komp powinna byc nazwa kompa ktorego ip podalem w zmiennej ip.
Blad wykonania tego polecenia to:

Kod:


awk: line 1: syntax error at or near ==

Co powinienem poprawic ?


Maverick
Gentoo GCC 4.1.1 KDE 3.5.6 Kernel 2.6.17
AMD Sempron 2400+ 512 MB RAM Seagate 160GB
Linux user number: #415965
http://www.gohome.org/debian_logo_06.gif http://maluch.pcz.pl/~maverick/images/logo_gentoo.png

Offline

 

#2  2005-10-22 13:39:04

  01000001 - Użytkownik

01000001
Użytkownik
Zarejestrowany: 2005-09-13

Re: Skrypcik w perlu

pokaż więcej skryptu.
Deklaracje zmiennych

Offline

 

#3  2005-10-22 14:17:18

  maverick44 - Moderator

maverick44
Moderator
Skąd: Częstochowa
Zarejestrowany: 2005-08-30
Serwis

Re: Skrypcik w perlu

O to cały skrypt:

Kod:


#!/usr/bin/perl

if(@ARGV)
{
 $ip = $ARGV[0] ;

  if ($ip =~ /(d+.d+.d+.d+)/)
  {
   printf "$1 n";
   $tresc_popup = $ARGV[1] ;
   $komp = `nmblookup -A "$ip" |grep -v "<GROUP>" | awk '($2 == "<00>") {print $1}' | tr -d 'n'` ;
   printf "$komp n" ;
   system "echo "$tresc_popup" | smbclient -U "Maverick" -I "$ip" -M "$komp" " ;

  } 

}
 else
     {
       printf "Uruchom podając jako parametry ip i treśc wiadomości. n";
     }  

Co tu poprawić powinienem ?


Maverick
Gentoo GCC 4.1.1 KDE 3.5.6 Kernel 2.6.17
AMD Sempron 2400+ 512 MB RAM Seagate 160GB
Linux user number: #415965
http://www.gohome.org/debian_logo_06.gif http://maluch.pcz.pl/~maverick/images/logo_gentoo.png

Offline

 

#4  2005-10-22 23:14:28

  zyga - Użytkownik

zyga
Użytkownik
Zarejestrowany: 2005-08-25

Re: Skrypcik w perlu

sorry że nie na temat bo nie mam odp. niestety na twoje pytanie ale mam prośbe ze jak skonczysz skrypt i ci zadziała to mi go przeslij bo by sie takie cos przydalo : zygamen@interia.pl -> jesli oczywiscie to jest mozliwe

dzieki


apt-get remove windows ....
apt-get install debian :)

Offline

 

#5  2005-10-25 08:45:28

  01000001 - Użytkownik

01000001
Użytkownik
Zarejestrowany: 2005-09-13

Re: Skrypcik w perlu

Zamiast ($2 == "<00>")
wpisz
($2 -eq "<00>")

U mnie dziala ;))
Pozdrawiam

Offline

 

#6  2005-10-25 11:46:24

  zyga - Użytkownik

zyga
Użytkownik
Zarejestrowany: 2005-08-25

Re: Skrypcik w perlu

mnie poprawieniu tego co napisałeś przy samym uruchamianiu (nawet bez parametrów)
pokazuje się błąd:

Scalar found where operator expected at ./popup line 14, near ""echo "$tresc_popup"
        (Missing operator before $tresc_popup?)
String found where operator expected at ./popup line 14, near "$tresc_popup" | smbclient -U ""
        (Missing operator before " | smbclient -U "?)
Bareword found where operator expected at ./popup line 14, near "" | smbclient -U "mzegan"
        (Missing operator before mzegan?)
String found where operator expected at ./popup line 14, near "mzegan" -I ""
Scalar found where operator expected at ./popup line 14, near "" -I "$ip"
        (Missing operator before $ip?)
String found where operator expected at ./popup line 15, near """
  (Might be a runaway multi-line "" string starting on line 14)
        (Missing semicolon on previous line?)
Scalar found where operator expected at ./popup line 15, near ""$komp"
        (Missing operator before $komp?)
String found where operator expected at ./popup line 15, near "$komp" ""
        (Missing operator before " "?)
syntax error at ./popup line 14, near ""echo "$tresc_popup"
Execution of ./popup aborted due to compilation errors.

Jak wpisuje parametry to też jest kapa robie to tak:

skrypt IP TRESC

co robie ewentualnie źle?


apt-get remove windows ....
apt-get install debian :)

Offline

 

#7  2005-10-25 16:33:51

  maverick44 - Moderator

maverick44
Moderator
Skąd: Częstochowa
Zarejestrowany: 2005-08-30
Serwis

Re: Skrypcik w perlu

Jako root wlaczasz ?:>
U mnie niby dziala ale wpisuje jkakies ciagi cyferek zamist nazwy kompa :(


Maverick
Gentoo GCC 4.1.1 KDE 3.5.6 Kernel 2.6.17
AMD Sempron 2400+ 512 MB RAM Seagate 160GB
Linux user number: #415965
http://www.gohome.org/debian_logo_06.gif http://maluch.pcz.pl/~maverick/images/logo_gentoo.png

Offline

 

#8  2005-10-25 23:26:28

  zyga - Użytkownik

zyga
Użytkownik
Zarejestrowany: 2005-08-25

Re: Skrypcik w perlu

u mnie dalej nie chodzi uruchomiłem jako root,

wywoluje to nastepująco (bo moze tu cos zle robie)

skrypt IP tresc

czy mają być jakieś pauzy albo co?


apt-get remove windows ....
apt-get install debian :)

Offline

 

#9  2005-10-31 14:03:01

  01000001 - Użytkownik

01000001
Użytkownik
Zarejestrowany: 2005-09-13

Re: Skrypcik w perlu

Zobacz tak :
system "echo $tresc_popup | smbclient -U Maverick -I $ip -M $komp" ;

Offline

 

#10  2005-10-31 14:14:06

  maverick44 - Moderator

maverick44
Moderator
Skąd: Częstochowa
Zarejestrowany: 2005-08-30
Serwis

Re: Skrypcik w perlu

Jak na razie sie wyklada na tej linijce

Kod:

$komp = `nmblookup -A "$ip" |grep -v "<GROUP>" | awk '($2 eq "<00>") {print $1}' | tr -d 'n'` ; 

wychodza z tego jakies ciagi ca ma wyjsc nazwa kompa :(


Maverick
Gentoo GCC 4.1.1 KDE 3.5.6 Kernel 2.6.17
AMD Sempron 2400+ 512 MB RAM Seagate 160GB
Linux user number: #415965
http://www.gohome.org/debian_logo_06.gif http://maluch.pcz.pl/~maverick/images/logo_gentoo.png

Offline

 

#11  2005-11-05 10:53:46

  01000001 - Użytkownik

01000001
Użytkownik
Zarejestrowany: 2005-09-13

Re: Skrypcik w perlu

-eq

Offline

 

#12  2005-11-08 23:43:21

  BiExi - matka przelozona

BiExi
matka przelozona
Skąd: Gorlice
Zarejestrowany: 2004-04-16
Serwis

Re: Skrypcik w perlu

niech ktos to posklada i do FAQ dopisze

Offline

 

#13  2005-11-09 00:18:42

  maverick44 - Moderator

maverick44
Moderator
Skąd: Częstochowa
Zarejestrowany: 2005-08-30
Serwis

Re: Skrypcik w perlu

Ja sie tym zajme ale jak tylko bedzie to dzialalo w 100 % :)


Maverick
Gentoo GCC 4.1.1 KDE 3.5.6 Kernel 2.6.17
AMD Sempron 2400+ 512 MB RAM Seagate 160GB
Linux user number: #415965
http://www.gohome.org/debian_logo_06.gif http://maluch.pcz.pl/~maverick/images/logo_gentoo.png

Offline

 

#14  2005-12-27 23:13:08

  maverick44 - Moderator

maverick44
Moderator
Skąd: Częstochowa
Zarejestrowany: 2005-08-30
Serwis

Re: Skrypcik w perlu

Witam! Po dluzszej przerwie usiadlem do tego no i mam taki maly blad:
Tresc skryptu:

Kod:

#!/usr/bin/perl

if(@ARGV)
{
 $ip = $ARGV[0] ;

  if ($ip =~ /(d+.d+.d+.d+)/)
  {
   printf "$1 n";
   $komp = `nmblookup -A "$ip" |grep -v "<GROUP>" | awk '($2 -eq "<00>") {print $1}' | tr -d 'n'` ;
   printf "$komp n" ;
  }

}
 else
     {
       printf "Uruchom podając jako parametry ip i treśc wiadomości. n";
     } 

Po uruchomieniu tego skryptu komenda perl netsend 192.168.0.10 mam taki wynik:

192.168.0.10
192,16800,1192,16800,1192,16800,1192,16800,1192,16800,1192,16800,1192,16800,1192,16800,1

A powinna sie pokazac nazwa kompa w sieci lokalnej o tym ip, co mma zle ?


Maverick
Gentoo GCC 4.1.1 KDE 3.5.6 Kernel 2.6.17
AMD Sempron 2400+ 512 MB RAM Seagate 160GB
Linux user number: #415965
http://www.gohome.org/debian_logo_06.gif http://maluch.pcz.pl/~maverick/images/logo_gentoo.png

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)