Új hozzászólás Aktív témák
-
Tamy
őstag
Sziasztok!
Rég nem járt már erre senki, azért szerencsét próbálok.
Egy expect scriptel szeretném elérni, hogy a legutolsó mentést egy adott mappából átmásolja egy másik szerverre is. Minden működne, csak a keresésnél akad el a folyamat, a mentés mindig más névvel készül, ezért dátum szerint meg kellene keresnem a legújabbat. A probléma, hogy az expect nem ismeri a find parancsot, ezért valami ilyesmit próbálok:
#!/usr/bin/expect -f
set now [clock seconds]
set date [clock format $now -format {%Y-%m-%d}]
set backupfile [spawn find /backup/ -name "Vol*" -mtime -5]
spawn scp -r /backup/$backupfile "user@192.168.1.1:/home/user/$date"
expect {
-re ".*es.*o.*" {
exp_send "yes\r"
exp_continue
}
-re ".*sword.*" {
exp_send "Jelszó\r"
}
}
interactNem tudom le lehet-e így tárolni a keresés eredményét, illetve a jelek szerint nem, csak arra nem jövök rá, hogyan kellene. Túrom a netet, de nem találok ilyen jellegű példát sehol.
-
Sarkanyka
csendes tag
-
holdacska
csendes tag
Sziasztok!
A gondom a következő: Adott egy horoszkop.tcl ami már nem működik mivel átírták az asztronetes oldalt php re, egyik oldalról letöltöttem a frissebbet, de nem működik mivel ezen a soron konkrétan 12 soron kiakad és nem tudja betöltenia tcl elt ezért maga az eggdrop sem indul el: putlog ''[fs]Horoszkóp-$horoszkopvers[ft] Loaded''. Mi lehet ezzel a gondja?? Ha ebből a sorból nem derül ki mi a gond megadom honnét tölthető le a tcl.Előre is köszönöm a segítséget.
-
-
focker
csendes tag
Végre megy, csak nem egészen úgy működik, ahogy kellene.
Ha a foreach reész a rajzolás után van, akkor vízszintesen/függőlegesen is akármennyit tudok rakni, akkor sem nyer egyik játékos sem. Csak valami nagyon extrém esetet sikertült kreálnom, amikor nyert valaki.
Ha a kirajzolás előtt, akkor meg még nem rajzolja ki az 5.-et, de már nyert a játékos.
[Szerkesztve] -
Jester01
veterán
Pl. valahogy így:
foreach { dx dy } { 1 0 1 1 0 1 -1 1 } {
set c 0
set cx $kordx
set cy $kordy
while { $cx + $dx < $meret && $cy + $dy < $meret } {
set cx [ expr $cx + $dx ]
set cy [ expr $cy + $dy ]
if { [lindex [ array get tabla ''$cx;$cy'' ] 1] != $jatekos } { break }
incr c
}
set cx $kordx
set cy $kordy
while { $cx - $dx >= 0 && $cy - $dy >= 0 } {
set cx [ expr $cx - $dx ]
set cy [ expr $cy - $dy ]
if { [lindex [ array get tabla ''$cx;$cy'' ] 1] != $jatekos } { break }
incr c
}
if { $c > 3 } { tk_messageBox -message ''A $jatekos jatekos nyert.'' }
} -
focker
csendes tag
Nem megy ez nekem
Hogy tudom az adott jeleket összehasonlítani egymással? Az utolsó pontból először 8 irányba kell vizsgálni, hogy van-e ugyanolyan. Ha van, akkor már csak az azt megelőzőt kell nézni. Pl aktuális koord. 5,5; akkor meg kell nézni a 4,4; 4,5; 4,6; 5,4; 5,6; 6,4; 6,5; 6,6; koordinátájú pontokat. Mondjuk ezek közül a 4,4 és az 5,6 koordinátákon van ugyanolyan. Akkor már csak ezekre kell nézni, hogy a 3,3 és 5,7 koordinátákon ugyanolyan van-e. Na de mindezt hogy lehet Tcl-ben?
-
focker
csendes tag
Közben megvan a hiba oka. Viszont továbbra is lehet egy négyzetben o és x.
-
focker
csendes tag
így gondoltad?
...
global jatekos
global tabla
set kordx [expr $x / $meret]
set kordy [expr $y / $meret]
set key ''$kordx;$kordy''
if { [llength [array get tabla $key] ] == 0 } {
array set tabla [list $key $jatekos]
}
if {$jatekos == 0} {
...
Így nekem: Invalid Command Name ''N'' hibát dob, ahol N az a sor, ahova kattintottam. -
Jester01
veterán
Csinálnod kellene egy tömböt a memóriában ahol azt tárolod, hogy melyik cellában milyen jel van. Pl ha ezt beszúrod a Kattintas procba:
global tabla
set kordx [expr $x / $meret]
set kordy [expr $y / $meret]
set key ''$kordx;$kordy''
if { [llength [array get tabla $key] ] == 0 } {
array set tabla [list $key $jatekos]
Akkor már nem tudsz olyan helyre bökni ahol van valami.
Ezután már csak azt kell ellenőrizni, hogy az aktuális lépés miatt nyert-e valaki. -
focker
csendes tag
Valaki aki ért ehhez a script nyelvhez, segíthetne egy rövidke feladatban:
#!/usr/local/bin/wishx -f
proc beosztas {path dx dy meret} {
for {set i 0} {$i <= $dx} {incr i $meret} { $path create line $i 0 $i $dy }
for {set i 0} {$i <= $dy} {incr i $meret} { $path create line 0 $i $dx $i }
}
proc Kattintas {path x y meret} {
global jatekos
set kordx [expr $x / $meret]
set kordy [expr $y / $meret]
if {$jatekos == 0} {
$path create oval [expr $kordx*$meret+2] [expr $kordy*$meret+2] \
[expr ($kordx+1)*$meret-2] [expr ($kordy+1)*$meret-2] \
-outline red
set jatekos 1
} else {
$path create line [expr $kordx*$meret+2] [expr $kordy*$meret+2] \
[expr ($kordx+1)*$meret-2] [expr ($kordy+1)*$meret-2] \
-fill blue
$path create line [expr $kordx*$meret+2] [expr ($kordy+1)*$meret-2] \
[expr ($kordx+1)*$meret-2] [expr ($kordy)*$meret+2] \
-fill blue
set jatekos 0
}
}
wm title . ''Canvas Item Demonstration''
wm iconname . ''Items''
set c .c
frame .frame
pack .frame -side top -fill both -expand yes
canvas $c -width 400 -height 400 \
-relief sunken -borderwidth 2
pack $c -in .frame -expand yes -fill both
set meret 20
set jatekos 0
bind $c <1> ''Kattintas %W %x %y $meret''
bind $c <Configure> ''beosztas %W %w %h $meret''
Van egy ilyen script, ez csinál egy négyzetrácsos táblát, amire lehet x-et és o-t rakni. Probléma egy helyre rakható o és x is. Hogy lehet ezt kiküszöbölni, hogy úgy működjön az egész, mint egy amőba játék (egy helyre csak x vagy csak o legyen rakható, és detektálja, ha valamelyik játékos nyer).
Új hozzászólás Aktív témák
- Debian GNU/Linux
- Milyen routert?
- Hajmeresztő ajánlat: 34,5 milliárd dollárért vinnék a Google Chrome böngészőjét
- Luck Dragon: Asszociációs játék. :)
- Milyen TV-t vegyek?
- Íme az új Android Auto!
- Xbox Series X|S
- Víz- gáz- és fűtésszerelés
- Minden, ami hőszivattyú
- Allegro vélemények - tapasztalatok
- További aktív témák...
- Lenovo LOQ (15IAX9) - Intel Core i5 i5-12450HX, RTX 4060 (3db elérhető még)
- FÉLÁRON! Fujifilm Instax Mini 12 instant fényképezőgép + 2x10 mini film - Új, bontatlan!
- Dell Latitude 5320 -60% "Kis Gamer" Üzleti Profi Ultrabook 13,3" i5-1145G7 8/256 FHD IRIS Xe
- Apple IPad pro 12.9 4th gen 256GB wifi+sim 97%-os Gyári akku
- PlayStation 5 (PS5.) SLIM 1TB. SSD. Digital Edition & Sony PlayStation VR2. Virtuális szemüveg.
- PS 5 kontroller // Számla // Garancia //
- Bomba ár! HP ProBook 650 G4 - i5-8GEN I 8GB I 256GB SSD I 15,6" FHD I Cam I W11 I Garancia!
- GYÖNYÖRŰ iPhone 13 mini 256GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3040, 96% Akkumulátor
- AKCIÓ! Apple Mac Studio M1 MAX 2022 32GB 512GB számítógép garanciával, hibátlan működéssel
- Gamer PC-Számítógép! Csere-Beszámítás! R5 3600 / RTX 2060 6GB / 16GB DDR4 / 512GB SSD
Állásajánlatok
Cég: FOTC
Város: Budapest