Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: QB: Mikä mättää koodissa? QB

juhaz [02.06.2004 19:40:12]

#

ext$ = command$
sta$ = mid$(ext$, 1,2)
usr$ = mid$(ext$, 4,300)
open "cshell.001" for input as #1
input #1, rootdir$
close #1


open rootdir$ + "\etc\passwd\" + rtrim$(usr$) for output as #1
color 7
print "PASSWORD: ";: color 0: input "", passwd$
if sta$ = "-r" then stat$ = "root"
if sta$ = "-n" then stat$ = "normal"
if sta$ = "-g" then stat$ = "guest"
if sta$ = "-s" then stat$ = "superuser"
print #1, passwd$, stat$
close #1

color 7
mkdir rootdir$ + "\home\" + rtrim$(usr$)

eli komento voisi olla tyyliin

adduser -r juha

eli komentorivillä näyttäisi tältä

W-UX Version 1.0 - Copyright (C)2004 Pleasantware.
$adduser -r juha
Password: _

Jostain syystä se väittää, että sta$ on -r juha vaikka sen pitäisi olla vain -r eli jokin ja jossain mättää, mutta mikä ja missä?

Antti Laaksonen [02.06.2004 21:21:05]

#

En nyt testannut tuota koodia, mutta MID$(ext$, 1, 2) kyllä varmasti erottaa merkkijonosta kaksi ensimmäistä merkkiä. Saman voisi helpommin tehdä LEFT$(ext$, 2), mutta vika ei voi olla siinä.

juhaz [03.06.2004 17:26:38]

#

En tiedä mikä tuossa koodissa mättää, mutta jos mä muutan tuon if sta$ = "-r"... jne... homman käyttämään select casea niin sitten toimii.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta