Avatar billede kennith Nybegynder
21. november 2003 - 19:46 Der er 17 kommentarer og
1 løsning

indtastning af streng værdig

Hej jeg er ved at lave lidt batch programering jeg kan ikke huske hvad jeg skal skrive for at få tildelt en brugerdefineret værdi til en variable den skal kunne indeholde flere tegn. Det skal bruges for at brugeren kan indtaste et filnavn som så bliver kopieret er der lige en der har den i hovedet?

Kennith
21. november 2003 - 19:57 #1
SET Variabelnavn=Værdi
21. november 2003 - 19:58 #2
F.eks. SET FILNAVN=C:\Temp\Test.txt
Avatar billede kennith Nybegynder
21. november 2003 - 20:27 #3
JA men det skal være en værdi der kan indtastes fra en promt

Kennith
21. november 2003 - 20:30 #4
Den værdi du indtaster som parameter efter batfilens navn på kommandolinien, f.eks.:
TEST.BAT C:\sti\filnavn.txt

refererer du til ved hjælp af:
%1

Indtastes der flere parametre til kommandoen, hedder referencen: %2 %3 osv.
21. november 2003 - 20:33 #5
I BAT-filen skriver du f.eks.:

XCOPY %1 X:\mappe
Avatar billede kennith Nybegynder
21. november 2003 - 20:34 #6
hmm ok bruger jeg en choice komando til det? hvor dan sætte jeg det op?

Kennith
Avatar billede kennith Nybegynder
21. november 2003 - 20:35 #7
den skal kunne bruges af andre som altså selv skal kunne indtaste hvilken fil de vil kopiere
21. november 2003 - 20:38 #8
Hvis du ved DOS-prompten indtaster følgende:
TEST.BAT C:\sti\filnavn.txt

og filen TEST.BAT bl.a. indeholder denne linie:
XCOPY %1 X:\mappe

vil filen C:\sti\filnavn.txt blive kopieret til X:\mappe
21. november 2003 - 20:39 #9
Hvis du ved DOS-prompten indtaster følgende:
TEST.BAT C:\sti\filnavn.txt Kopimappe

og filen TEST.BAT bl.a. indeholder denne linie:
XCOPY %1 X:\%2

vil filen C:\sti\filnavn.txt blive kopieret til X:\Kopimappe
Avatar billede kennith Nybegynder
21. november 2003 - 20:42 #10
tak men nu skal jeg lige være lidt besværlig jeg er inde i en menu jeg selv har lavet der er ikke nogen så det skal være inde fra batfilen det kan indtastes.
21. november 2003 - 20:43 #11
????????????????????????
Avatar billede kennith Nybegynder
21. november 2003 - 20:44 #12
men ok jeg kan jo selvfølgelig bare afslutte og styre kromten op til et indtasgnings felt (tror jeg nok skal lige have noget mad inden jeg fortsætter)

KEnnith
Avatar billede kennith Nybegynder
21. november 2003 - 20:46 #13
Jeg har lavet batfil med en menu og jeg vil gerne kunne indtaste et filnavn uden at afslutte filen
Avatar billede kennith Nybegynder
21. november 2003 - 20:56 #14
Her er det jeg har skrevet

ECHO OFF
ECHO 
CLS
@ECHO"
@ECHO"
@ECHO"
@ECHO"
@ECHO"
@ECHO"
@ECHO"
@ECHO"
ECHO                         ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» Ü             
ECHO                         º  1. Kopier en fil            º               
ECHO                         º  2. Kopier en diskette      º               
ECHO                         º  T. Tilbage til hovedmenu    º               
ECHO                         º  Q. Afslutte til DOS promt    º               
ECHO                         ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ               
ECHO                        ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
ECHO ¸ 2003 Kennith Nielsen
CHOICE /N /C:12tq > nul
FOR %%X IN (1,2,3,4) DO IF ERRORLEVEL %%X GOTO ADD%%X
:ADD1
ECHO kopier en fil
pause
GOTO SLUT
:ADD2
ECHO Inds‘t den diskette du vil have kopieret
ECHO
pause
GOTO SLUT
:ADD3
A:\MENU.BAT
:ADD4
:SLUT
ECHO 
CLS

den er ikke færdig endnu men under add1 skal ligge den del der kan tage mod en indtastning og starte kopieringen
det med at kopiere hele disketten er ikke noget problem det er barte lige den der med at få indtastet hvilken fil der skal kopieres jeg kan også godt finde ud af at lave selve kopieringen jeg vil bare have mulighed for at indtaste et helt fil navn i en variable
Avatar billede kennith Nybegynder
21. november 2003 - 20:59 #15
men ok jeg kan selvfølgelig omgås det ved at lave en choice med en rerun og så afsætte en tast til at starte kopieringen

Kennith
Avatar billede kennith Nybegynder
21. november 2003 - 21:03 #16
hmmm nej det kan jeg vist ikke alligevel
Avatar billede bertelbrander Novice
22. november 2003 - 16:04 #17
Hvis du bruger Win2k eller Xp (men det gør du vist ikke?) kan du bruge:

set /P Filnavn=Indtast filnavn:

Herefter er %Filnavn% det brugeren har tastet. I de gamle DOS versioner er der ikke rigtigt nogen metode til at få en streng fra brugeren :-(
Avatar billede kennith Nybegynder
23. november 2003 - 12:44 #18
ok men tak for jeres hjælp jeg har fundet en løsning hvor jeg skal programere en lille com fil som kan modtage indtastningen og den kalder jeg så bare fra min bat fil.

Kennith
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester