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
[img]http://www.gohome.org/debian_logo_06.gif[/img] [img]http://maluch.pcz.pl/~maverick/images/logo_gentoo.png[/img]

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
[img]http://www.gohome.org/debian_logo_06.gif[/img] [img]http://maluch.pcz.pl/~maverick/images/logo_gentoo.png[/img]

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
[img]http://www.gohome.org/debian_logo_06.gif[/img] [img]http://maluch.pcz.pl/~maverick/images/logo_gentoo.png[/img]

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
[img]http://www.gohome.org/debian_logo_06.gif[/img] [img]http://maluch.pcz.pl/~maverick/images/logo_gentoo.png[/img]

Offline

 

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

  01000001 - Użytkownik

01000001
Użytkownik
Zarejestrowany: 2005-09-13

Re: Skrypcik w perlu

[b]-eq [/b]

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


[url=http://dug.net.pl][b]DUG[/b][/url]

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
[img]http://www.gohome.org/debian_logo_06.gif[/img] [img]http://maluch.pcz.pl/~maverick/images/logo_gentoo.png[/img]

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
[img]http://www.gohome.org/debian_logo_06.gif[/img] [img]http://maluch.pcz.pl/~maverick/images/logo_gentoo.png[/img]

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)

[ Generated in 0.018 seconds, 13 queries executed ]

Informacje debugowania

Time (s) Query
0.00015 SET CHARSET latin2
0.00005 SET NAMES latin2
0.00113 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='18.191.202.72' WHERE u.id=1
0.00096 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.191.202.72', 1713613097)
0.00066 SELECT * FROM punbb_online WHERE logged<1713612797
0.00074 DELETE FROM punbb_online WHERE ident='47.128.110.92'
0.00383 DELETE FROM punbb_online WHERE ident='47.128.49.100'
0.00094 SELECT topic_id FROM punbb_posts WHERE id=21010
0.00353 SELECT id FROM punbb_posts WHERE topic_id=1975 ORDER BY posted
0.00040 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=1975 AND t.moved_to IS NULL
0.00037 SELECT search_for, replace_with FROM punbb_censoring
0.00086 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=1975 ORDER BY p.id LIMIT 0,25
0.00160 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=1975
Total query time: 0.01522 s