[KIX] Probleem met %username%

Pagina: 1
Acties:
  • 250 views sinds 30-01-2008
  • Reageer

  • mvdb1982
  • Registratie: April 2003
  • Laatst online: 17-03-2025
Beste tweakers,

Doordat we een nieuw programma geïnstalleerd hebben is het noodzakelijk dat er een aantal .ini bestanden bij een aantal gebruikers in hun lokale profiel worden geplaatst.

In eerste instantie niet echt spannend, maar heb nu een groep aangemaakt in de active directory en vervolgens met kixtart aan de slag gegaan. Maar helaas, kom er niet uit.

copy *.* C:\Documents and Settings\%username%\

Dit bijvoorbeeld werkt niet. Hoe kan ik kixtart laten weten dat de bestanden in het profiel moeten geplaatst worden?

  • Kixtart
  • Registratie: Mei 2004
  • Niet online

Kixtart

Destruction = Improvement

Welke Windows? Is er wel een globale variable username? (cmd->echo %username%)

☻/
/▌
/ \


  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 19-10-2025
ik zou beginnen met dubbele quotes om je directory heen te zetten ;)

This message was sent on 100% recyclable electrons.


  • whoami
  • Registratie: December 2000
  • Laatst online: 22:16
-> WOS

https://fgheysels.github.io/


  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 22:12

Hero of Time

Moderator LNX

There is only one Legend

Het is handiger om ipv C:\Documents ... gewoon de variabele %userprofile% te nemen. Op die manier sluit je uit dat je profiel op een andere plek staat dan C:\Documents and Settings.
Heb je ook al op de Kix site gekeken? Er is een gigantische hoeveelheid info die je daar kan vinden voor scripting. Complete wiki's en howto's kan je vinden via Google. En waarom zou je dit kopieer stuk laten uitvoeren door Kix (tenzij het bij het bestaande script wordt toegepast) en niet in een .cmd script?

Commandline FTW


  • sanfranjake
  • Registratie: April 2003
  • Niet online

sanfranjake

Computers can do that?

(overleden)
Hero Of Time schreef op donderdag 30 augustus 2007 @ 14:01:
Het is handiger om ipv C:\Documents ... gewoon de variabele %userprofile% te nemen.
Met ^

Mijn spoorwegfotografie
Somda - Voor en door treinenspotters


  • mvdb1982
  • Registratie: April 2003
  • Laatst online: 17-03-2025
Het is ondertussen gelukt met de volgende (beetje omslachtige) manier:

Eerste script (KIX):
code:
1
2
3
IF INGROUP("ABC")
RUN "\\ts2000\netlogon\script.bat"
ENDIF


Tweede script (BAT):
code:
1
2
3
4
5
6
7
8
9
10
@ECHO OFF
net use t: \\filerpri\programma
c:
cd\
cd "C:\Documents and Settings\%username%\"
md programma
t:
copy *.* "C:\Documents and Settings\%username%\programma\"
c:
net use t: /delete


Dit werkt prima.

[ Voor 7% gewijzigd door mvdb1982 op 31-08-2007 12:58 ]


  • ZeRoC00L
  • Registratie: Juli 2000
  • Niet online
Gebruik de variable %userprofile%, is een stuk korter, en kom je meteen bij c:\documents and settings\username uit.
edit: ah, had al iemand gezegd :)

[ Voor 14% gewijzigd door ZeRoC00L op 31-08-2007 13:04 ]

[*] Error 45: Please replace user
Volg je bankbiljetten


  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 22:12

Hero of Time

Moderator LNX

There is only one Legend

mvdb1982 schreef op vrijdag 31 augustus 2007 @ 12:57:
Het is ondertussen gelukt met de volgende (beetje omslachtige) manier:

Eerste script (KIX):
code:
1
2
3
IF INGROUP("ABC")
RUN "\\ts2000\netlogon\script.bat"
ENDIF


Tweede script (BAT):
code:
1
2
3
4
5
6
7
8
9
10
@ECHO OFF
net use t: \\filerpri\programma
c:
cd\
cd "C:\Documents and Settings\%username%\"
md programma
t:
copy *.* "C:\Documents and Settings\%username%\programma\"
c:
net use t: /delete


Dit werkt prima.
Leuk dat je die map verandert van locatie, maar waarom dan weer opnieuw invullen? Doe dan het volgende in je bat bestand:
code:
1
2
3
4
5
@ECHO OFF
net use t: \\filerpri\programma
md %userprofile%\programma
copy t:\*.* %userprofile%\programma
net use t: /delete

Zo, stukken sneller en korter. Ik denk zelfs dat je je eerste script in het cmd script kan zetten (dus echt .cmd en niet .bat). Zou ongeveer uitzien als volgt:
code:
1
2
3
if ingroup("abc")
   <bovenstaande>
endif

Commandline FTW


  • sanfranjake
  • Registratie: April 2003
  • Niet online

sanfranjake

Computers can do that?

(overleden)
Mja en ooit in het geval je Windows niet op C: maar D: ofzo staat is het ook erg onhandig met keihard gedefinieerde paden :P

Mijn spoorwegfotografie
Somda - Voor en door treinenspotters


  • jvdmeer
  • Registratie: April 2000
  • Laatst online: 23:13
Hero Of Time schreef op vrijdag 31 augustus 2007 @ 15:42:
[...]

Leuk dat je die map verandert van locatie, maar waarom dan weer opnieuw invullen? Doe dan het volgende in je bat bestand:
code:
1
2
3
4
5
@ECHO OFF
net use t: \\filerpri\programma
md %userprofile%\programma
copy t:\*.* %userprofile%\programma
net use t: /delete

Zo, stukken sneller en korter. Ik denk zelfs dat je je eerste script in het cmd script kan zetten (dus echt .cmd en niet .bat). Zou ongeveer uitzien als volgt:
code:
1
2
3
if ingroup("abc")
   <bovenstaande>
endif
Leuk dat je een unc-pad mapt, maar waarom niet direct? Doe dan het volgende in je bat bestand:
code:
1
2
3
@ECHO OFF
md %userprofile%\programma
copy \\filerpri\programma\*.* %userprofile%\programma


en ook dit kan nog korter:
code:
1
2
@ECHO OFF
xcopy \\filerpri\programma\*.* %userprofile%\programma /i


offtopic:
heb zo ongeveer alles van vorige post bij elkaar geplakt...

[ Voor 3% gewijzigd door jvdmeer op 31-08-2007 15:47 ]


  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 22:12

Hero of Time

Moderator LNX

There is only one Legend

jvdmeer schreef op vrijdag 31 augustus 2007 @ 15:46:
[...]


Leuk dat je een unc-pad mapt, maar waarom niet direct? Doe dan het volgende in je bat bestand:
code:
1
2
3
@ECHO OFF
md %userprofile%\programma
copy \\filerpri\programma\*.* %userprofile%\programma


en ook dit kan nog korter:
code:
1
2
@ECHO OFF
xcopy \\filerpri\programma\*.* %userprofile%\programma /i


offtopic:
heb zo ongeveer alles van vorige post bij elkaar geplakt...
Heb je je eigen code al eens geprobeerd? Standaard in een commandprompt worden UNC paden niet geaccepteerd. In een script zal dat denk ik net zo werken. Anders is het uiteraard een stuk beter :).

Commandline FTW


  • Rayzilt
  • Registratie: Juli 2003
  • Laatst online: 20-02 12:33
Waarom gebruiken jullie %username% etc. in Kix?

Kix heeft zelf ook prachtige variabelen, bijv: @USERID

Zal een stuk beter werken

Zie -> www.kixtart.org

  • Equator
  • Registratie: April 2001
  • Laatst online: 15:54

Equator

Crew Council

#whisky #barista

Harley538 schreef op vrijdag 31 augustus 2007 @ 16:58:
Waarom gebruiken jullie %username% etc. in Kix?

Kix heeft zelf ook prachtige variabelen, bijv: @USERID

Zal een stuk beter werken

Zie -> www.kixtart.org
Omdat het script wat gestart wordt vanuit kix een batch file is :)

  • jvdmeer
  • Registratie: April 2000
  • Laatst online: 23:13
Hero Of Time schreef op vrijdag 31 augustus 2007 @ 16:02:
[...]

Heb je je eigen code al eens geprobeerd? Standaard in een commandprompt worden UNC paden niet geaccepteerd. In een script zal dat denk ik net zo werken. Anders is het uiteraard een stuk beter :).
Dat ben ik me bewust. Maar daarom kan je nog steeds vanaf een UNC-pad kopieren. Dat blijft mogelijk, dus dit werkt perfect.

Jeroen
Pagina: 1