skal programmet køre på 27 forskellige pc'er, hvor mapperne med txt filen skal oprettes?
hvis ja, så kan du bruge:
md c:\%USERNAME%
echo indhold her>c:\%USERNAME%\%USERNAME%.txt
disse 2 linjer laver en mappe og deri liggende fil med samme navn som den bruger der er logge på computeren. txt filens indhold i dette eksempel er 'indhold her'
for at hoppe rundt i koden kan du bruge:
:ONE
ECHO Dette er 1, og vi overspringer nu 2
GOTO THREE
:TWO
ECHO Dette vises ikke
:THREE
ECHO Vi sprang forbi 2
GOTO END
:END
EXIT
--
--
For dum til at vide alt, for klog til at skulle kommentere alt.
Når ingen ser dig spise det, er der så stadig kalorier i det?
Din batch-fil kalder du mk1.bat og så tjekker du hvilke parametre du har startet filen med.
F.eks. "mk1.bat michael svend poul", hvor
%0 = mk1.bat
%1 = michael
%2 = svend
%3 = poul
osv, du kan behandle flere parametre, dog skal du bruge SHIFT-kommandoen der flytter de restende navne 1 ned hver gang (da du kun kan bruge op til %9).
Dvs. hver gang du kører SHIFT så bliver %2 flyttet ned i %1 (og alle de andre flyttet med) så du skal nøjes med at tjekke %1 indtil den er tom.
Eksempel:
http://pastebin.com[...]
--
http://chipsguiden.dk[...] hej. det ser ud til at ville ku hjælpe mig.
min batchfil skal kunne kaldes på samme pc med 27 forskellige (elev navne) såsom michael, så skulle den gerne lave en mappe "michael" og en txt dokument deri hvor der eks. står michael er go i eller lign.
forstår bare ikke hvordan den skulle kunne det for for at jeg kan få gang i min batchfil skal jeg kalde den ved dets navn altså mk1. :(
--
HimSeLf!
icq 112734632
|Intel Pentium4 2,4ghz|p4S533|DDR-Ram Kingston value 1gbRAM|Geforce 4 mx|
#ronson
takker lyder også til at kunne blive en go hjælp.
hvergang jeg f.eks skriver shift kommando
så blir %1 =%2 så skal jeg bare lave
%1 tilbage til %1 eller noget i den stil. =) har fået alt for lidt undervisning i det her. håbe ri tålmodige
--
HimSeLf!
icq 112734632
|Intel Pentium4 2,4ghz|p4S533|DDR-Ram Kingston value 1gbRAM|Geforce 4 mx|
hvilken idé mener du kan hjælpe?
logger alle eleverne på med deres eget login og brugernavn? og hvis de alle har deres eget brugernavn, står de så som michael, kristian, svend, poul...?
--
For dum til at vide alt, for klog til at skulle kommentere alt.
Når ingen ser dig spise det, er der så stadig kalorier i det?
altså hvis du skriver
mk1.bat 1 2 3 4 5 6
så bliver %1 = 1, %2 = 2, %3 = 3 osv
Hvis du så skrifer SHIFT så bliver de rykket så %1 = 2, %2 = 3, %3 = 4 osv
Problemet er at du ikke kan bruge over %9, derfor er det nemmest at rykke dem hver gang i løkken, for så kommer den næste hele tiden i %1, indtil den bliver tom fordi der ikke er flere værdier at flytte ned
--
http://chipsguiden.dk[...] #spock
det på samme pc. jeg har til opgave at lave batchfil som kan fuldføre denne opgave at kunne oprette op til 27 forskellige navne altså hvis jeg skrev michael laver den mappe med navn michael, og txt dokument med samme navn.
de opgaver skulle den kunne gøre lige meget om jeg skrev michael eller svend osv op til de 27 forskellige navne.
min batchfil hedder dog mk1.bat
men twisten er lige at ku få den fil ti lat reagere på alle de navne =)
--
HimSeLf!
icq 112734632
|Intel Pentium4 2,4ghz|p4S533|DDR-Ram Kingston value 1gbRAM|Geforce 4 mx|
#7 så den skal blot oprette alle mapperne på samme tid? hvis ja, så brug endelig det forslag i #2
eller skal alle brugerne selv trykke på filen og så dukker mappen op?
eller vil du have en boks op, hvor du kan angive et navn, og så bliver den først oprettet?
--
For dum til at vide alt, for klog til at skulle kommentere alt.
Når ingen ser dig spise det, er der så stadig kalorier i det?
Her er et eksempel med brugerinput der opretter en mappe. Noget i den stil?
@echo off
echo Indtast dit navn
echo\
set /p name=
REM Følgende linje opretter en mappe
md "%name%"
REM Følgende linje opretter en fil i mappen. Tricket er at echo'e noget, og bruge > til at gemme til en fil
echo Hej %name%. Dette er din fil, i din mappe > "%name%/%name%s tekstfil.txt"
pause
--
--
http://www.jkg.dk[...] #spock
man skal kunen trykke et navn af gangen, den skulle helst ikke oprette allesammen på engang. =)
jeg må sige at i alle har givet mig noget godt information som jeg vil prøve smide ind i min batchfil. =) se om jeg kan få det til at virke =)
--
HimSeLf!
icq 112734632
|Intel Pentium4 2,4ghz|p4S533|DDR-Ram Kingston value 1gbRAM|Geforce 4 mx|
har lige læst tråden hurtigt igennem, så kan godt være at det er helt galt, men vil det ikke kunne bruges hvis du laver det så:
mk1.bat poul
så opretter den mappen poul, med textfilen poul i.
ellers vil #9's ekspempel da også være smart
//splazz
--
{ASUS M2N SLI Deluxe|AMD64 X2 5600+|2x512MB Corsair PC6400|ASUS GF6600GT|2x74gb WD Raptor @ RAID0|H2O}
sådan her ser min batch ud som den er lige nu
@echo off
if "%mk1%" == "michael" goto michael
:michael
md michael
cd michael
echo nummer1 >michael.txt
write michael.txt
cd..at
%0 = mk1.b
%1 = poul
hvis jeg så skal kunne kalde filen f.eks poul skal der så stå følgende
btw jeg er noob til det her i dos men prøver at lære. =)
--
HimSeLf!
icq 112734632
|Intel Pentium4 2,4ghz|p4S533|DDR-Ram Kingston value 1gbRAM|Geforce 4 mx|
#[imp-v]bOb
Okay, jeg forstår desværre ikke helt hvad du vil..
men.. her er den simpleste version :p
"
@echo off
echo.
echo.
set /p input=
:partone
if exist %input% (
write "%input%\%input%.txt" && File opened
) else (
md %input%
echo. >> %input%\%input%.txt
if exist %input% echo succesfully created folder plus txt
write %input%\%input%.txt
)
echo.
echo Vil du koere processen igen?
set /p input=
if %input%==ja goto partone
if %input%==Ja goto partone
goto EOF
"
det burde virke... gad ikke teste xD
--
TIMEOUT 10000
there we go =D
Som jeg forstår det du prøver at forklare os, vil du oprette en mappe, der har det navn du skriver efter din mk1.bat.
Ikke noget med du skriver alle navnene på én gang?
Altså ikke:
mk1.bat svend bent frank michael..
Men:
mk1.bat svend
mk1.bat bent
mk1.bat frank
mk1.bat michael
...
Udover det, skal der oprettes en fil, der hedder det navn du skriver, samt forskelligt indhold.
Hvis det er rigtigt forstået, så er copy paste din ven i det her tilfælde.
#### START BATCH ####
GOTO %1
:michael
md %1
cd %1
echo nummer1 >michael.txt
GOTO EOF
:svend
md %1
cd %1
echo nummer2 >%1.txt
GOTO EOF
:bent
md %1
cd %1
echo nummer3 >%1.txt
GOTO EOF
:frank
md %1
cd %1
echo nummer4 >%1.txt
GOTO EOF
...
--
Asus P5B, Intel Core 2 Quad Q6600, ATI Radeon X1950 Pro 256mb, 8GB DDR2 PC2-6400, 2x320 GB Hitachi HDT725032VLA360