- 1 - Inleiding. Je eerste batch bestand maken

Vergelijkbare documenten
Installatie Software - Opdrachten Les 2

Rhino: Back-up maken. RsyncBackup

Je gaat leren programmeren in Ruby. En daarna in Ruby een spelletje maken. Websites zoals Twitch en Twitter gemaakt zijn met behulp van Ruby?

Inhoud De omgeving van de gebruiker

JavaScript. 0 - Wat is JavaScript? JavaScript toevoegen

Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python.

Surf naar en vul jouw gebruikersnaam en wachtwoord in.

Doe het zelf installatiehandleiding

Hoe leg ik een FTP-verbinding met de website van school? Hoe maak ik een downloadhyperlink via het CMS?

Handleiding Sportlink Club

Besturingssystemen Windows Verkenner

Les 8 Organisatie van Bestanden

HANDLEIDING DMS Plugin Installatie, configuratie & werking

Meerdere gebruikersaccounts aanmaken

Beheersplan 2010 Gebruikershandleiding

Installatie van de het Online Bijbel Abonnement met Online Bijbel Studie DVD (editie 11-01)

10. Mijn eerste programma

The Nanny Personeel. Lokaal inloggen

GEEF UW INVESTERINGEN EEN BOOST MET LIVE TRADER

Klik op OK om verder te gaan. U ziet het volgende scherm verschijnen:

«Technische gids» Netwerkinstallatie en Terminal Server/Citrix

TiPisch Rhino Download opruimen

Hoe download en installeer ik de software 15.2? Lees voordat u begint dit document volledig door en sluit alle programma s af.

Acco: Files exchange documentatie 10 januari 2011

TI-SMARTVIEW. Installeren op Windows PC

Werken met de Excelmappen

FDISK. Hoofdstuk 1 Inleiding FDISK

Aan de slag met internet

TiPisch Rhino Schijfopruiming

Online c++ leren programmeren:

Installatie handleiding Reinder.NET.Optac

OSCOMMERCE INSTALLATIE

Outlookkoppeling installeren

1. Mappen, documenten en bestanden

SOFTLOK 12.5x. Update met behoudt van gegevens en het instellen van het EMS geheugen bereik

1. Inloggen Uw account Wachtwoord veranderen Alle gegevens bekijken Credits (mail-bundels) kopen 3

Prullenbak ledigen via terminal

Windows Command Prompt

Mappen en bestanden. In dit hoofdstuk leert u het volgende:

PowerPoint Instructie. Een presentatie maken met gesproken commentaar

Handleiding installeren en wijzigen handtekening

ACDSee 9 leerprogramma s > Foto s downloaden met Foto s Ophalen Wizard

Installatie en configuratie documentatie

Mogelijke valkuil bij de installatie procedure is de bestandslocatie.

BOB 50 School Edition Installaties netwerk en Terminal Server/Citrix

Inleiding Het adres Hoe werkt ? Je adres registreren Aanmelden bij Outlook Schermonderdelen...

Handreiking installatie en gebruik KansPlus sjablonen Voor medewerkers landelijk bureau en ledengroepen

Invoegen... 8 Invulpunt... 9 Nieuwe bouwsteen maken... 9 Bouwsteen opslaan Wijze van werken in Outlook Informatie...

Dynamic Publisher Twee handige hulpjes voor DP

Handleiding CMS Online Identity Webontwikkeling. Handleiding CMS

Windows Verkenner. 1. Enkele basiselementen. 1. Bestanden

Voordat u begint, controleert u alstublieft de volgende zaken:

Minimale eisen voor de computer

Opstarten van de GRATIS facturatiemodule

User accounts maken in een Wandy Hotspot, d.m.v. een batch.

Winrar. door verhaegen

Het project Gamemaker Kids is mede mogelijk gemaakt door:

OneDrive handleiding

OUTLOOK ACCOUNTS POSTVAKKEN SORTEERREGELS HANDTEKENINGEN

In de meeste CMS systemen wordt hier een stuk tekst mee aangeduid. Je kunt het, het best vergelijken met een nieuws artikel.

Microsoft Office Tekstdocument alle systemen

Beknopte handleiding Overhoor NL (Efka-soft)

Bestanden ordenen in Windows 10

Installatie- en gebruikshandleiding Risicoverevening. 11 april 2007 ZorgTTP

Installatiehandleiding Windows 98

Handleiding: MRJ Online Back-up versie 1.0

Office LibreOffice Tekstdocument gebruiken

Handleiding bij de Booktest Generator

Computercursus. Vereniging Dorpsbelang Gaast

TypVaardig 5.1. Handleiding

Handleiding van de Bibliotheek: e-books lezen op je e-reader - versie voor OS X (Mac)

Admin handleiding. Essentius Dropbox handleiding. Pagina 1

Netwerken en communicatie binnen en buiten het bedrijf

Inleiding tot programmeren: Javascript

HET BESTURINGSSYSTEEM

26/3/2012 ICLON UNIVERSITEIT LEIDEN WORKSHOP WEBCAST. Van PowerPoint naar Movie Maker Tara van Helden

Cloud Products FilePartner

Instructie voor een mail-merge VZVZ toestemmingsformulier in Word.

Welkom bij de Picture Package Producer 2. Picture Package Producer 2 starten en afsluiten. Stap 1: Beelden selecteren

Handleiding NZa-portaal. voor zorgaanbieders

HANDLEIDING PROGRAMMEREN IN PASCAL (LAZARUS)

Shell Card Online e-invoicing Service Gebruikershandleiding. Versie 2.8

AFO 142 Titel Aanwinsten Geschiedenis

Symbol for Windows BlissEditor

Stappenplan Scannen. Hoe te scannen: Start het programma ABBYY Finereader op

OneDrive voor bedrijven en scholen

HANDLEIDING voor het MAKEN EN UPLOADEN van een excelbestand vanuit het bronsysteem ASTRAIA

Beveiligingstips voor je laptop

Sjablonen aanmaken, formulieren aanmaken, macro s maken, menubalk aanpassen.

Studentenhandleiding Studentenpagina STUDENTENPAGINA HANDLEIDING VOOR STUDENTEN. Handleiding Studentenpagina 1

Korte uitleg: Wat doet de shell met mijn commandoregel?

In de tabel hieronder vindt u een beschrijving van de verschillende velden die kunnen voorkomen in uw import-bestand.

Backup maken. Backup terugzetten. H O O F D S T U K 4 Backup

PSW Omgaan met documenten. Onderwerp Omgaan met documenten vanuit het PSW portaal Datum september 2017

Berekening van de hash-code van een bestand of CD

Gebruik van:

Webs.hogent.be Persoonlijke home/webdirectory voor personeel en studenten

Transcriptie:

- 1 - CURSUS MS-DOS copyright Felix Weyne Inleiding Opmerking: Deze cursus is om te leren programmeren in batch onder Windows XP. De codes die hier worden besproken, zullen niet werken onder eerdere versies van Windows (zoals bijvoorbeeld Windows 98). Wat is batch? Batch is een programmeertaal die ontworpen is voor het vroegere DOS. DOS was het eerste besturingsysteem van de softwaregigant Microsoft. DOS is ook de grondlegger van de huidige generatie besturingsystemen (Windows XP, Windows Vista...). Een belangrijke opmerking: De "DOS" die bij Windows XP zit is een EMULATOR. Windows XP draait absoluut NIET op DOS. Dus de batch bestanden die je zal maken, zullen worden uitgevoerd door een EMULATOR (dat is een programma die "DOS" nabootst). Je eerste batch bestand maken Om een batch bestand te maken zal je eerst een programma nodig hebben om je codes in te voeren. Je kan een simpele tekstverwerker gebruiken zoals notepad. Om notepad te openen ga je naar start => uitvoeren => (en daar typ je) notepad en klik je op ok. In notepad typ je het volgende: 2. cls 3. echo Dit is mijn eerste batch bestand 4. pause Opmerking: De cijfers moet je NIET erbij typen. Die staan er alleen om aan te duiden welke code op welke regel moet! Ga nu naar bestand => opslaan als, en typ daar (niets anders, dus zorg ervoor dat je het héél correct overtypt) batch.bat Opmerking: Het is héél belangrijk dat je die.bat er achter zet. Zorg ervoor dat je niet gewoon batch typt (want dan wordt het opgeslagen als een tekstbestand ) Ga nu naar de locatie waar je jouw bestand hebt opgeslagen en open het. Normaalgezien zou je het volgende moeten zien: Wat je normaal in DOS zou moeten zien Dit is mijn eerste batch bestand Druk op een toets om door te gaan... Proficiat! Je hebt zo juist je eerste batch bestand gemaakt. Nu zullen we het ontleden.

- 2 - Je batch bestand ontleden Nu zal ik elke code apart uit leggen. Zodat je begrijpt wat elke code doet, en welk resultaat het geeft. De code hebben we al (zie het grijze kader met code er boven). Het resultaat hebben we ook al gezien (zie het zwarte kader). echo off Dit commando zorgt ervoor dat de locatie waar het bestand wordt op geopend niet wordt weergegeven. Als je bvb. het batchbestand op bureaublad zou opgeslagen hebben, en je zou aangemeld zijn op de gebruikersnaam Jan. Dan zou er het volgende staan in DOS: Wat je zal zien als je echo off weg laat C:\Documents and Settings\Jan\Bureaublad>echo Dit is mijn eerste batch bestand Dit is mijn eerste batch bestand C:\Documents and Settings\Jan \Bureaublad>pause Druk op een toets om door te gaan... Omdat dit niet praktisch is, zorgt de code echo off ervoor dat de bestandslocatie niet wordt getoond. Opmerking: Waarom staat het apenstaartje ( @ ) voor die echo off? Het apenstaartje zorgt ervoor dat bij de code echo off de bestandslocatie niet wordt vermeld (want zonder het @-teken heeft de code alleen maar vat op alles na echo off, dus heeft het geen vat op echo off zelf). Probeer maar eens zonder het @-teken echo Dit commando zorgt ervoor dat je een tekst kan laten verschijnen in DOS. Dit doe je door te beginnen met het commando echo, gevolgd door een spatie, en dan je tekst die je wil laten verschijnen. Als je een witte regel wilt laten verschijnen, zal echo en dan spatie niet werken. Daarvoor zal je het commando echo. moeten gebruiken. (gewoon echo met een punt er achter) cls Dit commando zorgt ervoor dat je een tekst kan laten verdwijnen in DOS. Alle tekst die boven het commando CLS staat, wordt gewist. Neem nu dat er echo Dit is mijn eerste batch bestand staat, en dat je daaronder in je programmaatje CLS typt, dan zal je die tekst Dit is mijn eerste batch bestand nooit zien. Omdat die tekst onmiddellijk wordt gewist. In het eerste programma is dat er eigenlijk overbodig. Want die @ zorgt er reeds voor dat de regel echo off niet wordt herhaald. Ik vermeld dat nu al omdat het later handig van pas zal komen. pause Dit commando zorgt ervoor dat je programma even pauzeert. Je krijgt bij het commando pause de volgende tekst te zien: Druk op een toets om door te gaan. Je moet dit commando gebruiken omdat je batch bestand anders niet zal stoppen, en in een milliseconde zal getoond worden.

- 3 - Herhaling van het nut van elke code in je batch file Nu zal ik nog eens het nut van elke code herhalen die je nodig hebt om een tekst te laten verschijnen. Hieronder zie je nog eens het gebruikte script (=opeenvolging van codes) code 2. cls 3. echo Dit is mijn eerste batch bestand 4. pause Het nut van: 1) echo off Met deze code moet (als je toch een net batch bestand wilt) ELK batch bestand beginnen Wat gebeurt er als ik het niet doe?: Dan wordt de bestandslocatie van waar het batch bestand staat, bij elke code in je batchbestand vermeld. 2) cls Zoals al vermeld, heeft de code CLS in dit batch bestand geen nut, maar ik vermeld het nu al, zodat je deze code al kent. Wat gebeurt er als ik het niet doe?: Niets, zoals al vermeld, zie later 3) echo Deze code heb je nodig om een tekst te laten verschijnen. Anders zie je de tekst niet. Wat gebeurt er als ik het niet doe?: Dan zal DOS een error geven, omdat je tekst niet wordt herkend als een juiste code. Probeer maar eens zonder echo 4) pause Deze code heb je nodig om een je bestand te laten pauzeren. Wat gebeurt er als ik het niet doe?: Dan zal DOS het batch bestand aflopen op zijn tempo, zonder pauze. Omdat een computer héél snel is zal je DOS maar één milliseconde zien. Omdat dit niet echt praktisch is moet je deze code gebruiken Een kleine quiz, om te zien of je alles verstaat 1) DOS is: a) een computer. b) een besturingssysteem. c) de uitvinder van windows XP. 2) De @ in echo off dient voor: a) het weg laten van de bestandslocatie in het prog. b) het heeft geen nut. c) het weg laten van de code zelf.

- 4-3) De code CLS in het script van in a) Het wissen van de echo off het voorbeeld dient voor: b) Het heeft geen nut c) Het weg laten van de bestandlocatie in het prog. 4) Als je pauze niet zou gebruiken a) Het prog. zou maar heel even getoond worden dan zou er het volgende gebeuren b) Het programma zou niet werken zonder pause c) Het heeft geen nut 5) Welke code kan je een witte regel a) echo laten verschijnen? b) echo (spatie*) *= vervangen door het leesteken c) echo (punt*) *= vervangen door het leesteken De juiste antwoorden zijn: 1) B 2) C 3) B 4) A 5) C Ik hoop dat je iets hebt bijgeleerd door deze cursus. Als je verder nog geïnteresseerd bent, kan je ook de andere cursussen downloaden. MVG Felix

- 5 - CURSUS MS-DOS 2 copyright Felix Weyne Inleiding Opmerking: Deze cursus is om te leren programmeren in batch onder Windows XP. De codes die hier worden besproken, zullen niet werken onder eerdere versies van Windows (zoals bijvoorbeeld Windows 98). Om verder te gaan Deze cursus is het vervolg op cursus MS-DOS (1). Ik raad u ten strengste af om aan deze cursus te beginnen als je de vorige nog niet onder de knie hebt. In deze cursus zullen de termen die in de vorige cursus aan bod kwamen, niet meer worden herhaald. Een stapje verder in de DOS-wereld Net zoals in de vorige cursus, zal u eerst de volgende codes moeten overtypen, daarna worden ze besproken. 2. echo Dit programma zal een tekstbestand aanmaken op de c-schijf 3. pause 4. >> c:/bestand.txt ECHO hoi! hoe is het? 5. echo Bestand succesvol aangemaakt! 6. pause Opmerking: De cijfers moet je NIET erbij typen. Die staan er alleen om aan te duiden welke code op welke regel moet! Ga nu naar bestand => opslaan als, en typ daar (niets anders, dus zorg ervoor dat je het héél correct overtypt) batch.bat Opmerking: Het is héél belangrijk dat je die.bat er achter zet. Zorg ervoor dat je niet gewoon batch typt (want dan wordt het opgeslagen als een tekstbestand ) Ga nu naar de locatie waar je jouw bestand hebt opgeslagen en open het. Normaalgezien zou je het volgende moeten zien: Wat je normaal in DOS zou moeten zien Dit programma zal een tekstbestand aanmaken op de c-schijf Druk op een toets om door te gaan... Bestand succesvol aangemaakt! Druk op een toets om door te gaan... Kijk nu eens op jouw c-schijf. Normaal moet daar een tekstbestand staan met als inhoud: hoi! hoe is het? Dat bestand is aangemaakt door jouw batch bestand!

- 6 - Je batch bestand ontleden Nu zal ik de code om een bestand aan te maken uitleggen De code: Write >> Deze code heet write, maar als je write in je batch bestand zal gebruiken, zal er niets gebeuren. De volgende algemene code zorgt er echter voor dat er wel iets zal gebeuren: Algemene code voor write (>>) >> {BESTANDSLOCATIE, BESTANDSNAAM + BESTANDSEXTENSIE} ECHO {INHOUD} Dit is de algemene code die ervoor zorgt dat je een bestand kan aanmaken, met een bepaalde inhoud. Natuurlijk moet je de woorden en de haakjes zelf vervangen door jouw keuze. Een voorbeeld hiervan is: Toegepaste vorm van de algemene code >> c:/test.txt ECHO Dit is een bestand aangemaakt, door een batch bestand! Deze code zorgt ervoor dat op de c-schijf een bestand wordt aangemaakt (een tekstbestand, zie extensie.txt) met als inhoud: Dit is een bestand aangemaakt door een batch bestand! Een iets geavanceerdere versie In het vorige batch-bestand stond een fout! Ja, lees het maar: een fout! Ik heb die er dan ook met opzet ingestoken. Omdat ik je maar met één code per deeltje wou beladen. De fout in het batch-bestand is de volgende: echo bestand succesvol aangemaakt! Dit is niet juist. Dat wordt gezegd, maar wie zegt er dat het daadwerkelijk zo is? Daarvoor zal ik je een nieuwe code leren, die kijkt of het bestand wel echt bestaat Typ eerst de volgende code over in notepad en sla het op als batch.bat 2. echo Dit programma zal een tekstbestand aanmaken op de c-schijf 3. pause 4. >> c:/bestand.txt ECHO hoi! hoe is het? 5. if exist c:/bestand.txt goto ok 6. echo Het bestand kon niet worden aangemaakt 7. goto einde 8. :ok 9. echo het bestand is succesvol aangemaakt 10. goto einde 11. :einde 12. pause

- 7 - Opmerking: De cijfers moet je NIET erbij typen. Die staan er alleen om aan te duiden welke code op welke regel moet! Opmerking: De zwarte codes in de tekst worden niet meer uitgelegd, doordat ze al werden uitgelegd in de vorige cursus! De oranje codes worden hieronder uitgelegd: if & exist (regel 4) De code if kan je letterlijk vertalen uit het engels. In het engels betekent if: als. Dus deze code is een voorwaarde. De code exist kan je eveneens letterlijk vertalen uit het engels. In het engels betekent exist: bestaan. Dus eigenlijk kan je if exist vertalen als: Als bestaat. Die code zorgt ervoor dat, als een bepaald bestand bestaat, het batch-bestand een bepaalde opdracht moet uitvoeren. Dus een juiste algemene code is: Algemene code voor IF & EXIST if exist {BESTANDSLOCATIE, BESTANDSNAAM + BESTANDSEXTENTIE}{OPDRACHT} Natuurlijk moet je de woorden en de haakjes zelf vervangen door jouw keuze. Dus een voorbeeld van een toegepaste vorm van de algemene code is: Toegepaste vorm van de algemene code if exist c:/test.txt echo test Deze code zal controleren of het bestand test.txt op de c-schijf bestaat en indien het bestand aanwezig is zal de tekst test getoond worden. Opmerking: Wat als je nu wilt dat je batch-bestand een tekst toont als het bestand NIET bestaat. Dan moet je juist jouw code zetten, de regel onder de if exist code Een voorbeeld hiervan is: 2. if exist c:/test.txt echo Het bestand bestaat 3. echo Het bestand bestaat niet 4. pause Nu heb je een juiste versie van je batch-bestand. Nu zegt het niet altijd: het bestand bestaat. Jouw batch-bestand zegt het enkel nog als het écht aanwezig is, indien het bestand niet aanwezig is zal jouw batch- bestand zeggen: het bestand bestaat niet goto (regels 4, 7 & 10) De code goto kan je - net als if & exist - letterlijk vertalen uit het engels. In het engels betekent goto: ga naar. Met deze code kan je DOS laten verspringen naar een aangeduid deel uit je batch-bestand. Je kan een deel aanduiden met het leesteken: dubbelpunt. Een voorbeeld hiervan is:

- 8-2. if exist c:/test.txt goto bestaat 3. echo Het bestand bestaat niet 4. goto einde 5. :bestaat 6. echo het bestand bestaat 7. goto einde 8. :einde 9. pause De codes in het bruin zijn allemaal verwijzingen naar aangeduide delen. De codes in het rood zijn allemaal aangeduide delen. Deze code zorgt ervoor dat het als het bestand test.txt aanwezig is, het verspringt naar jouw aangeduid deel in jouw batch-bestand. Ik hoop dat je iets hebt bijgeleerd door deze cursus. Als je verder nog geïnteresseerd bent, kan je ook de andere cursussen downloaden. MVG Felix

- 9 - CURSUS MS-DOS 3 copyright Felix Weyne Inleiding Opmerking: Deze cursus is om te leren programmeren in batch onder Windows XP. De codes die hier worden besproken, zullen niet werken onder eerdere versies van Windows (zoals bijvoorbeeld Windows 98). Om verder te gaan Deze cursus is het vervolg op cursus MS-DOS (1) & 2. Ik raad je ten strengste af om aan deze cursus te beginnen als je de vorige cursussen nog niet onder de knie hebt. In deze cursus zullen de termen die in de vorige cursussen aan bod kwamen, niet meer worden herhaald. Verwijzing in batch files met de code: set Net zoals in de vorige cursussen, zul je eerst de volgende codes moeten overtypen, daarna worden ze besproken. Open notepad en typ daar: 2. echo Wat wil je vanavond eten? 3. set keuze=pizza 4. echo Ik zou graag %keuze% eten 5. pause Opmerking: De cijfers moet je NIET erbij typen. Die staan er alleen om aan te duiden welke code op welke regel moet! Ga nu naar bestand => opslaan als, en typ daar (niets anders, dus zorg ervoor dat je het héél correct overtypt) keuze1.bat Opmerking: Het is héél belangrijk dat je die.bat er achter zet. Zorg ervoor dat je niet gewoon batch typt (want dan wordt het opgeslagen als een tekstbestand ) Ga nu naar de locatie waar je jouw bestand hebt opgeslagen en open het. Normaalgezien zou je het volgende moeten zien: Wat je normaal in DOS zou moeten zien Wat wil je vanavond eten? Ik zou graag pizza eten Druk op een toets om door te gaan... Hoewel je in regel 4 het woord pizza niet hebt vermeld, staat het er toch. Dit komt door de verwijzing die is gemaakt met de code: set. Meer info vind je op de volgende pagina.

- 10 - De code: set en verwijzingen De code: set (regel 3) De code set kan je zoals vele codes- vertalen uit het Engels. De code set betekend in het Engels: zet. Met deze code kunt u een VERWIJZING instellen (zetten). De algemene code voor set is: Algemene code voor set set {NAAM VOOR VERWIJZING}={INHOUD VAN DE VERWIJZING} Opmerking: Het is belangrijk dat je het leesteken: is gelijk aan aan de naam voor de verwijzing & de inhoud van de verwijzing typt, anders zal het niet werken! Dit is de algemene code die ervoor zorgt dat je een verwijzing in je batch file kan maken. Natuurlijk moet je de woorden en de haakjes zelf vervangen door jouw keuze. Een voorbeeld hiervan is: Toegepaste vorm van de algemene code set set keuze=pizza Vraag: Wat is het nut van de code set? Antwoord: Op de eerste plaats lijkt deze code totaal onnuttig, want het is toch veel gemakkelijker om: echo ik zou graag pizza eten te typen. in plaats van de code set te gebruiken. Maar dat is niet waar, later in deze cursus zal je nog veel handerigere functies van de code set zien. Vraag: Wat is het nut van deze functie van de code set die we nu hebben gezien Antwoord: Neem nu dat je een héél groot batch-bestand maakt met vaak het woord pizza. Dan is het veel gemakkelijker om in de code de inhoud van de verwijzing te veranderen, dan op elke lijn het gaan aanpassen, niet? De verwijzing in je batch bestand gebruiken (regel 5) Nadat je weet hoe je de verwijzing moet instellen (met de code set) moet je nog weten hoe je die verwijzing moet gebruiken. Dat doe je als volgt: Neem de naam voor de verwijzing die in je code set staat (als voorbeeld: zie batch bestand vorige pagina, regel 3) Als je toegepaste vorm van de algemene code deze is: een voorbeeld van een toegepaste vorm van de algemene code set keuze=pizza Dan zal je verwijzing er zo uit zien: Je verwijzing zal er zo uit zien: %keuze%

- 11 - Meer functies van de code set Typ het volgende in notepad en sla het op als keuze2.bat 2. echo Wat wil je vanavond eten? 3. set /p keuze= 4. echo Ik zou graag %keuze% eten 5. pause Ga nu naar de locatie waar je jouw bestand hebt opgeslagen en open het. Normaalgezien zou je het volgende moeten zien: Wat je normaal in DOS zou moeten zien Wat wil je vanavond eten? _ Nu krijg je een INPUT. Nu kunt u daar iets typen naar keuze. Typ daar nu: frietjes. Normaal zou je dan het volgende moeten zien: Wat je normaal in DOS zou moeten zien Wat wil je vanavond eten? frietjes Ik zou graag frietjes eten Druk op een toets om door te gaan... Je hebt nu zojuist een batch-bestand gemaakt met een INPUT. Hieronder lees je hoe je dat moet doen. Een input ( /p ) maken met de code set (regel 3) In dit stukje ga ik u uitleggen hoe je een batch-bestand maakt waarbij de gebruiker iets interactief kan doen (in dit geval een keuze van eten typen). Je kan een input maken, door simpelweg /p aan je code toe te voegen. De algemene code ziet er bij gevolg zo uit: set /P {NAAM VOOR VERWIJZING}= Opmerking: Het is heel belangrijk dat je achter het leesteken: is gelijk aan NIETS typt. Want de inhoud van de verwijzing wordt namelijk zelf ingevuld door de gebruiker zelf ( zoals je daarnet in DOS je keuze kon typen).

- 12 - En wat als je wilt dat een programma iets doet als je een bepaalde INPUT geeft Zoek nu even in het tweede batch-bestand naar regel 2. Daar staat er: wat wil je vanavond eten. Ga nu naar de regel eronder. Daar staat een INPUT. Wat als je nu wilt dat het batch programma reageert op een bepaalde input, vb: pizza (in plaats van gewoon te herhalen in een zin). Typ het volgende in notepad: code 2. echo Wat wil je vanavond eten? 3. set /p keuze= 4. if %keuze% == pizza goto op 5. echo Ik zou graag %keuze% eten 6. goto einde 7. :op 8. echo sorry, de pizza is op! 9. goto einde 10. :einde 11. pause Sla het bestand nu op als keuze3.bat 1) Ga nu naar de locatie waar je jouw bestand hebt opgeslagen en open het. Typ in de INPUT: pizza. Normaal gezien zou je dan het volgende moeten zien: Wat je normaal in DOS zou moeten zien Wat wil je vanavond eten? pizza sorry, de pizza is op! Druk op een toets om door te gaan... 2) Sluit het programma en open het opnieuw typ daar nu: frietjes. Normaal gezien zou je het volgende moeten zien: Wat je normaal in DOS zou moeten zien Wat wil je vanavond eten? frietjes Ik zou graag frietjes eten Druk op een toets om door te gaan... In voorbeeld 1 REAGEERT jouw batch-bestand op de input: pizza. In voorbeeld 2 REAGEERT jouw batch-bestand NIET op jouw input, hij herhaalt het enkel.

- 13 - De algemene code voor te reageren op een input is bij gevolg: code if %naam van je verwijzing% == voorbeeld {OPDRACHTREGEL} Waarbij je voorbeeld vervangt door jouw keuze. Ik hoop dat je iets hebt bijgeleerd door deze cursus. Als je verder nog geïnteresseerd bent, kan je ook de andere cursussen downloaden. MVG Felix

- 14 - Gevorderde MS-DOS cursus copyright Felix Weyne Inleiding Opmerking: Vanaf deze cursus, wordt het een stuk moeilijker. Niets wordt nog herhaalt, er wordt niet meer precies gezegd wat je moet doen. vb: Bij een grijs kader moet je de code overtypen -maar de cijfers niet- en opslaan in een bestand. Vervolgens moet je het opgeslagen bestand openen. Belangrijk: Als je de vorige cursussen nog niet onder de knie hebt, begin dan zeker niet aan deze cursus. Om te weten welke acties je moet ondernemen, -vb bij een grijs kader met: code overtypen, enz - gelieve de vorige cursussen te raadplegen. Bestanden verwijderen 2. echo Alle tijdelijke internetbestanden zullen verwijderd worden 3. pause 4. cd %userprofile%/local Settings/Temporary Internet Files 5. del *.* /q 6. cd %userprofile%/cookies 7. del *.* /q 8. echo alles is gedeletet 9. pause Belangrijk: In de vorige cursussen werd er altijd gesproken over: Wat je normaal in DOS moet zien. Omdat we nu met andere codes gaan werken, die functies uitvoeren (en niet alleen maar tekst tonen in DOS), zullen we spreken van: Wat er normaal zou moeten gebeuren. Algemene opmerking: De roze termen, zijn veranderlijk. Dit wil zeggen dat als je een roze term ziet, dat je dat niet klakkeloos moet overtypen in je batch-file maar vervangen door uw keuze. Vb: Als je [bestandslocatie] ziet staan, dan moet je dit vervangen door vb: c:/mijn documenten Wat er normaal zou moeten gebeuren Alle bestanden in de mappen cookies & temporary internet files zouden verwijderd moeten zijn* *=Sommige bestanden kunnen niet verwijderd worden, omdat ze in gebruik zijn. Bestanden deleten met de code: del Om een bestand te deleten moet je gebruik maken van de code: del. De algemene code voor del is: algemene code voor del Del [bestandslocatie] /q

- 15 - Goede vraag! Voor wat staat de /q in Del? De /q staat voor Quiet modus (stille modus). Dit wil zeggen dat MS-DOS geen bevestiging zal vragen voor het verwijderen van het bestand. Probeer maar eens zonder /q er zal staan: c:\bestandslocatie\*. Weet u het zeker (J/N)? Bestanden die verwijderd worden zullen niet meer in de prullenbak te vinden zijn. Let dus op wat je doet! Als je bestanden wil deleten met de code del, kan je gebruik maken van een jokerkaart (*.*) Wablief?! Het begrip jokerkaart Een jokerkaart wordt gebruikt in combinatie met sterretjes. Een sterretje (*) wilt zeggen: alles is mogelijk. Zoals je al weet, heeft elk bestand een bestandsnaam en een bestandsextensie. De code *.* wil bijgevolg zeggen: elke bestandsnaam, elke extensie. Zo wordt elk bestand gedeleted. Van bestandslocatie veranderen met de code: cd De code cd staat voor change directory, wat zoveel betekend als: verander bestandslocatie. Standaard worden de commando s in MS-DOS uitgevoerd in %userprofile%. Als je dus iets wil deleten op een andere locatie, dan zal je van locatie moeten veranderen. Dit doe je door gebruik te maken van de code: cd. De algemene code voor cd is: algemene code voor cd cd [bestandslocatie] Wablief?! Het begrip %userprofile%: Als je een bestandslocatie, met een gebruikersnaam in de locatie, wilt gebruiken dan zal je het commando %userprofile% moeten gebruiken. %userprofile% vervangt je gebruikersnaam. Als je vb. aangemeld bent met de gebruiker Jan. Dan zal %userprofile% het volgende vervangen: c:/documents and settings/jan/. Omdat op elke computer de gebruikersnaam meestal- anders is, is het aangeraden om %userprofile% te gebruiken! Een kleine herhaling Omdat de code op de eerste pagina, toch wel een belangrijke code is, wordt hier het script nog eens getoond, met voorzien van commentaar die alles kort nog eens herhaalt. (alleen de nieuwe codes staan hier, de oude zijn weggelaten 4. cd %userprofile%/local Settings/Temporary Internet Files veranderen naar de locatie 5. del *.* /q Elk bestand met elke extensie deleten, zonder bevestiging (zie /q en jokerkaart) 6. cd %userprofile%/cookies weer veranderen naar andere locatie (zie cd ) 7. del *.* /q Elk bestand met elke extensie deleten, zonder bevestiging (zie /q en jokerkaart)

- 16 - Nog enkele belangrijke verwijzingen Zojuist hebben we gezien dat de code %userprofile% verwijst naar: c:/documents and settings/gebruikersnaam/. In de onderstaande tabel zal je nog enkele andere handigeverwijzingscodes zien: Handige codes Nog enkele handige codes... Verwijst naar %computername% %temp% %os% computernaaam temp locatie besturingssysteem Vb: Als je onder Windows XP werkt, en je gebruikt in je batch-file echo %os% dan zal je: Windows_NT zien. Een hele map verwijderen & een proces beëindigen Maak een map aan op de c schijf met als naam: map1 Open kladblok (notepad) en laat die openstaan. Ook na het invoeren van je codes sluit je het niet! 2. echo map 1 zal verwijderd worden en kladblok zal gesloten worden 3. pause 4. rd c:/map1 5. tskill notepad.exe 6. pause Wat er normaal zou moeten gebeuren Map1 die op de c schijf stond, is gedeletet. Het programma kladblok is afgesloten Om een bestand te deleten moet je gebruik maken van de code: rd. De algemene code voor rd is: algemene code voor tskill rd [bestandslocatie] /q (zonder CD) of rd [bestandslocatie] /q (met CD)

- 17 - Goede vraag! Waarom geen CD meer in de grijze code hierboven? Er is nog een andere manier om iets te verwijderen, zonder gebruik te maken van de code cd. Dit is de manier met de aanhalingstekens. Die manier gaat als volgt: je zet de bestandslocatie + eventueel de bestandsnaam tussen aanhalingstekens. Zo moet er niet meer gebruik worden gemaakt van CD. Het is wel al verstandig dat je deze code nu al kent, omdat die later van pas zal komen! Om programma (ook wel proces genoemd) te sluiten deleten je gebruik maken van de code: taskkil. De algemene code voor taskkil is: algemene code voor tskill tskill [procesnaam] Ik hoop dat je iets hebt bijgeleerd door deze cursus. Als je verder nog geïnteresseerd bent, kan je ook de andere cursussen downloaden. MVG Felix

- 18 - Gevorderde MS-DOS cursus copyright Felix Weyne Opmerking Belangrijk: Als je de vorige cursussen nog niet onder de knie hebt, begin dan zeker niet aan deze cursus. Om te weten welke acties je moet ondernemen, -vb bij een grijs kader met: code overtypen, enz - gelieve de vorige cursussen te raadplegen. De inhoud van een tekstbestand weergeven in dos 2. >> tekst.txt ECHO peren 3. for /F %%i in (tekst.txt) do echo %%i 4. pause Opmerking: We maken hier een bestand aan omdat de tekst uit een extern bestand wordt gehaald. Met de code op regel 2 wordt er een bestand aangemaakt zodat er een bestand is om tekst uit te halen (zie cursus 2). Voor nu het bestand uit. Wat je normaal in DOS zou moeten zien peren Druk op een toets om door te gaan... Zoals je ziet overloopt DOS de volgende stappen: zoeken naar een bestand genaamd tekst.txt en vervolgens de inhoud van het bestand weergeven. (zie kleuraanduiding in de code hierboven). Dit is heel simpel uitgelegd. Hieronder volgt de specifieke uitleg: -De algemene code is dus FOR. Maar met het woordje for, wat letterlijk voor(waarde) betekent, zal je niets kunnen doen. Je moet dus met andere woorden nog iets aanvullen na het woordje for: *Om te beginnen moet je aangeven over welk soort data het gaat (bestanden, mappen, ) in ons geval gaat het dus om bestanden. Om aan te duiden dat het bestanden zijn moet je /F na for zetten (de f in /f staat foor filesystem). *Ten tweede moet je een variabele instellen. Dit is hetzelfde als met de code set (voorbeeld: set /p keuze, waarbij keuze de variabele is). Een variabele begint met twee procenttekens (= %) en wordt gevolgd door een kleine- of hoofdletter. Er wordt door DOS een onderscheid gemaakt tussen kleineen hoofdletters. Dus %%i is NIET hetzelfde als %%I (let op de kleine en hoofdletter)! *Ten derde moet je aanduiden waar de data (=waar het bestand) zich bevindt (en welke bestandsnaam en extensie het heeft). In de hierboven vermelde code is dit het bestand test.txt *Ten slotte moet je zeggen wat er gebeuren met dit bestand (vb: gekopieerd worden? of moet er een regel worden toevoegen? Enz.). Met andere woorden: welke opdracht moet er worden uitgevoerd? In ons geval moet de inhoud van het bestand worden weergegeven. Dus alles na DO is de opdracht die uitgevoerd moet worden. In de hierboven vermelde code is de opdracht: geef weer (=echo) de gevonden tekst (=%%i). Of om in het juist Nederlands te zeggen: geef de gevonden tekst weer.

- 19 - Hieronder zal voor de duidelijkheid de hierboven 4 vermelde stappen aangeduid worden met kleurtjes in de code. Ook zal er onder elk stukje code een verduidelijking zijn (=een cijfer) die verwijzen naar de hier bovenvermelde stappen. 1. for /F %%i in (tekst.txt) do echo %%i (1) (2) (3) (4) De algemene code voor FOR is dus: algemene code voor for FOR /F %%letter IN (bestandslocatie) DO opdracht Opmerking: De roze termen zijn veranderlijk. Dit wil zeggen dat als je een roze term ziet, dat je dat niet klakkeloos moet overtypen in je batch-file maar vervangen door uw keuze. Vb: Als je [bestandslocatie] ziet staan, dan moet je dit vervangen door vb: c:/mijn documenten Maar nu heb ik het volgende probleem: vervang eens het woordje peer in je tekstbestand door de zin: ik eet graag sappige peren. Open dan het batchbestand. Je zal zien dat er alleen ik staat, en niet ik eet graag sappige peren. Om de volledige zin te kunnen tonen moeten we nog meer functies van de code for gebruiken. Zie het volgende deel welke deze zijn en hoe ze werken. Meer functies van de code for 2. >> tekst2.txt ECHO ik eet graag sappige peren! 3. for /F tokens=* %%i in (tekst.txt) do echo %%i 4. pause Opmerking: Er wordt nu een ander tekstbestand aangemaakt om niet te verwarren met het vorige tekstbestand. Voor nu het batchbestand uit. Normaal zou je het volgende moeten zien: Wat je normaal in DOS zou moeten zien ik eet graag sappige peren! Druk op een toets om door te gaan... Nu wordt de volledige zin weergegeven. Dit komt doordat je de code tokens hebt gebruikt in de code for (zie groene aanduiding in de code). In de code op pagina 2 heb je niet gespecificeerd hoe ver DOS moet lezen. Daarom geeft dos alleen het eerste woord van elke zin weer. Maar door tokens te gebruiken, specificeer je wat DOS allemaal moet lezen. In dit geval, alles. Als je wilt dat alles wordt gelezen door DOS, gebruik dan een jokerteken (ook wel jokerkaart genoemd, zie cursus 4).

- 20 - Maar je kan ook specificeren dat DOS enkel de eerste twee regels van je bestand moet lezen. Of dat DOS regel 1 t.e.m 4 moet lezen, en regel 8. Meer info hierover later. Om te beginnen zal ik eerst de algemene code geven. De algemene code voor tokens is: algemene code voor tokens tokens=specificatie Opmerking: 1) Natuurlijk moet de code tokens in samenwerking met de code for gebruikt worden! De code tokens bestaat niet op zichzelf en kan dus niet zonder for gebruikt worden! 2) Het woord specificatie moet je vervangen door wat je wilt dat DOS allemaal leest. In ons voorbeeld daarnet werd het bijvoorbeeld vervangen door een jokterteken (*) 3) Opgelet de code is tokens=specificatie en NIET tokens= specificatie (let op de plaats van de aanhalingstekens ( ) Jokerteken (*) dient om alle regels te lezen. Maar je kan aan de opdracht tokens ook andere specificaties geven. Hieronder volgt een tabel met allemaal voorbeelden, en aan de hand van deze voorbeelden zouden de opdrachten duidelijk moeten zijn. Stel je hebt een bestand van tien regels. De volgende codes zullen elk een specifieke uitwerking hebben op dit bestand: code tokens=1,3 tokens=1-3 tokens=* tokens=1-3,7 tokens=7 uitwerking het eerste en het derde woord van elke regel wordt weergegeven (2 variabelen nodig) het eerste tot en met het derde woord van elke regel wordt weergegeven (3 variabelen nodig) Alle regels worden weergegeven (1 variabele nodig uitzondering) het eerste tot en met het derde woord en het zevende woord van elke regel weergeven (4 variabelen nodig) het zevende woord van elke regel wordt weergegeven (1 variabele nodig) Opmerking: Een veelgemaakte fout is dat de code tokens niet in samenwerking met de code for wordt gebruikt. Natuurlijk moet het samen gebruikt worden met de code for. Ook een niet onbelangrijke opmerking is, dat bij elke code hierboven de opdracht echo hoort (natuurlijk kan je ook andere opdrachten gebruiken, maar nu gebruiken we de opdracht echo. Dus voor elke duidelijkheid, de opdracht tokens MOET NIET perse gebonden zijn aan de opdracht echo!) en wat ook niet onbelangrijk is: er moeten evenveel variabelen zijn als het aantal woorden dat je weergeeft. Bijvoorbeeld: Met de volgende code: tokens=1,3 for /F tokens=1,3 %%i in (tekst.txt) do echo %%i %%j Met de volgende code: tokens=1-8 code van hierboven opdracht echo hoort erbij twee variabelen omdat er twee (niet noodzakelijk echo!) woorden worden gevraagd. for /F tokens=1-5 %%i in (tekst.txt) do echo %%i %%j %%k %%l %%m

- 21 - De code for is héél ingewikkeld en heeft nog véél meer opties. Andere opties worden later besproken, want ik kan gemakkelijk nog een paar pagina s volschrijven met de code for. Maar let op: de code for is niet onbelangrijk in de batch-wereld en wordt nogal vaak gebruikt. Daarom is het interessant dat je de basis goed onder de knie hebt. Handig om de bovenstaande codes uit te tabel te testen is dat je het volgende bestand gebruikt: Inhoud tekstbestand woord1 woord2 woord3 woord4 woord5 woord6 woord7 woord1regel2 woord2regel2 woord3regel2 woord4regel2 woord5regel2 woord6regel2 woord7regel2 woord1regel3 woord2regel3 woord3regel3 woord4regel3 woord5regel3 woord6regel3 woord7regel3 Als je dit in je tekstbestand zet, waaruit DOS de info haalt, wordt er onmiddellijk duidelijk, welke opdracht wat weergeeft. Vb bij de opracht tokens=1-3 ga je het volgende dan zien: Wat je normaal in DOS zou moeten zien woord1 woord2 woord3 woord1regel2 woord2regel2 woord3regel2 woord1regel3 woord2regel3 woord3regel3 Zo zie je duidelijk wat de opdracht tokens=1-3 doet.