Gå til innhold

Lage lite "prog" i bat. Med Passord, meny osv...


Anbefalte innlegg

Videoannonse
Annonse

Det er sikkert ikke mulig som default, fordi det er rett og slett ingen behov for det. Passord i et batchscript er, beklager formuleringen, idiotisk.

 

Et batchscript som ordet tilsier en måte å utføre en rekke kommandoer i ett, og til det gjør det en nesten-OK-minus jobb. Skal du gjøre mer avanserte oppgaver og basicly lage en applikasjon med flere oppgaver bør du se inn i et språk som er mer egnet, og alt fra vbscript til VB til Java/C# er IMO mye mer egnet, lærer deg samtidig noe som faktisk er nyttig, og har mulighet til videre utvikling. Dersom du absolutt skal bruke et scriptspråk anbefaler jeg deg å installere cygwin og bruke bashscript eller perl som er mye lettere og mye kraftigere enn batch, og gir deg også mer nyttig kunnskap på lik linje som de andre språkene nevnt over.

Lenke til kommentar

Ja, skal du over til mer avanserte oppgaver bør du kansje ikke satse på batch. Da bør du kansje satse på f.eks Perl eller Python (vis du vil ha det enkelt da). Vil du ha enda mer nyttige språk bør du kansje satse på C/C++ eller Visual Basic/Qbasic... Jeg lager egentlig små programmer i batch kun for gøy :p

 

Edit: Men dette var en fin tråd om batch, kan lage mange morsomme programmer ut fra denne infoen. Håper ikke at tråden dør ut...

Endret av mhbakke
Lenke til kommentar

Idiotiskt??

Jeg ønsker å vite disse tingene hovedsakelig for å lære,

og programmene jeg lager er bare for moro skyld. ;)

 

Er det noen som vet hvordan man gjør det eller?

 

Edit:

Jeg har vært borti vsb, btw. Drev litt på med det for noen år siden.

Men har glemt det meste av det nå da :p

Endret av Radi
Lenke til kommentar

Det er idiotisk fordi du har lesetilgang til hele fila. Du kan lett lese ut f.eks passord eller hash og eventuelt TYPE'e hele fila til en annen fil og fjerne hele passordspørsmålet. Det er flott å lære, men jeg syntes bare du burde sikte inn på noe nyttig i batch, eller gå over til et egnet språk til oppgaven du ønsker å gjøre.

Lenke til kommentar

Ja, har jo spørt dem, men som sakt så husker de det ikke.

Men jeg kan prøve å få dem til å finne det ut.

Så kan jeg poste det her, hvis ingen andre poster det før meg ;)

Endret av Radi
Lenke til kommentar

Litt utenom trådstarters spørsmål, men siden vi er så godt igang;

Finnes det noen måte å lagre teksten som vises i cmd-vinduet til en .txt -fil?

 

 

EDIT: Har funnet ut at kommandoen cmd > C:\output.txt -r /k ping vg.no fungerer, da vil den lage en tekstfil av ping -kommandoen. Problemet er er at dersom jeg skal lage et batch-script, så vil den stoppe opp etter denne ene kommandoen - dersom jeg skriver noe på linjen under så kommer ikke dette med.

Endret av jh_
Lenke til kommentar

Bare for å gjøre det litt mer spennede.

Det viktige her er å se forskjell på > og >>.

> overskriver fila, mens >> appender (legger til).

 

@echo off 

SET domain=vg.no
SET text=c:\log.txt

echo Pinger %domain% > %text%
echo ------------------------------------------- > %text%
ping %domain% > %text%
echo ------------------------------------------- > %text%
echo Ferdig ping > %text%

Lenke til kommentar
Bare for å gjøre det litt mer spennede.

Det viktige her er å se forskjell på > og >>.

> overskriver fila, mens >> appender (legger til).

 

@echo off 

SET domain=vg.no
SET text=c:\log.txt

echo Pinger %domain% > %text%
echo ------------------------------------------- > %text%
ping %domain% > %text%
echo ------------------------------------------- > %text%
echo Ferdig ping > %text%

8162021[/snapback]

 

Se på det du! Der gikk det litt bedre :) Var litt værre ettersom jeg kjører et program fra cmd, så den eneste løsningen jeg fant på det var å kjøre .exe -filen 2 ganger.

 

@echo off
SET rapport="C:\Backup\%date%\Rapport.txt"
SET command=robocopy D:\Test "C:\Documents and Settings\Administrator\Skrivebord\Backup\%date%" /E /V /ETA /PURGE
ECHO Sikkerhetskopiering startes...
@ping.exe 127.0.0.1 -n 4 -w 1000 > nul
%command%
%command% > %rapport%
@ping.exe 127.0.0.1 -n 3 -w 1000 > nul
ECHO Sikkerhetskopieringen er ferdig, rapporten ble lagt under:
ECHO %rapport%
PAUSE

Endret av jh_
Lenke til kommentar
Her er en hack :

 

%command% > %temp%\temp.txt
type %temp%\temp.txt
type %temp%\temp.txt > %rapport%

8163075[/snapback]

Genialt! :love:

 

Du vet ikke om det er mulig å sette inn et linjebrudd i cmd, også?

F.eks:

echo Blablabla

(linebreak)

echo Blablabla

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...