DOS beginselen

Aangeboden door alt.comp.virus nieuwsgroep deelnemers.
(Deze "anti-malware" pagina's zijn het resultaat van een doorlopende gezamenlijke inspanning.)

Anti-Virus Main Menu
Navigatie


Bijdrage van: Frederic Bonroy

De volgende tekst zal je helpen de basis pricipes van MS-DOS te leren begrijpen en hoe er mee te werken. De kennis die je opdoet kan van pas komen als je je computer moet opstarten van een schone diskette om een virus te verwijderen.

1. De opdracht regel

DOS wordt gebruikt met behulp van opdrachten of instructie's. Dit betekent dat er geen leuke ikoontjes zijn een geen muis om te gebruiken, maar inplaats daarvan type je rechtstreeks opdracht die de computer uitvoert.
De prompt bestaat natuurlijk niet uit een willekurige reeks van tekens. Er is een structuur en deze geeft handige informatie. Hier zie je hoe het er uit ziet als je van diskette opstart:
 
A:\>_

De letter "A" geeft het huidige station weer en wordt gevolgd door een dubbele punt (":"). Station A: correspondeert met het diskette station (net als in Windows). Hierna komt de huidige directorie (zo heet een map in DOS). In dit geval is het de hoofd directorie waar de \ voor staat. De hoofddirectorie is de eerste in de hierarchische opbouw. Elke andere directorie is een ondeel van de hoofd directorie. Het > teken beeïndigd de prompt.

Let op dat DOS je toestaat om de vorm van de prompt aan te passen (dit wordt hier niet besproken), maar in de meeste gevallen ziet het er uit als bovengenoemd.

Onderstaande is ook een normale prompt. Het is niet moeilijk te raden in welke directorie we nu zijn... het is directorie TEST op station A:
 
A:\TEST>_

2. Opdrachten ingeven

Zoals hierboven beschreven, vertel jij de computer wat er moet gebeuren door opdrachten in te geven achter de prompt en dit af te sluiten met de Enter toets. De computer zal de opdracht analyseren en uitvoeren als deze herkend wordt. Stel dat we iets geks invoeren:
 
A:\>pizza
De opdracht of bestandsnaam is onjuist 

Logisch dat de "pizza" opdracht totaal onbekend is. Maar DOS is vriendelijk en verteld wat er fout is. Op je scherm staat dat je  "De opdracht of bestandsnaam is onjuist" hebt ingegeven. Dit onthult tevens, dat DOS "opdrachten" en bestandsnamen als ingave accepteert. Maar wat is het verschil?
 

3. Opdrachten en bestandsnamen

Het programma dat de prompt weergeeft en je opdrachten laat intoetsen heet "command interpreter". Het is het bestand command.com. Een commando is een opdracht uitgevoerd door de command interpreter zelf. Ingave van een "goede" bestandsnaam (in tegenstelling tot een "onjuiste" bestandsnaam) zal echter het bestand uitvoeren. Een "goede" bestandsnaam van een bestand dat DOS herkend is een programma (programma's zijn .bat, com and .exe)
 

4. De "dir" opdracht

Je gaat met bestanden werken, dus is het handig te weten wat deze bestanden zijn. De "dir" opdracht geeft een lijst met bestanden in de huidige directorie samen met informatie over deze bestanden. Hier is een voorbeeld:
 
A:\>dir

Het volume in drive A heeft geen naam.
Het volumenummer is 1234-5678
Map van A:\

TEST           <DIR>        01-01-99  01:02 
AUTOEXEC BAT           391  12-05-99  14:40
CONFIG   SYS            63  12-05-99  14:45
HIMEM    SYS        33,447  05-05-99  22:22
EMM386   EXE       126,695  05-05-99  22:22
COMMAND  COM        96,370  05-05-99  22:22
       5 bestanden        256,966 bytes
       1 dir('s)        1,200,698 bytes beschikbaar 

De eerste twee regels beginnend met "Volume" zijn niet interessant. De derde regel geeft aan welke directorie getoond wordt. Hierna volgt de inhoud van de directorie. TEST is een directorie in de directorie die getoond wordt; een "subdirectorie". Het teken "<DIR>" geeft dat aan. Hierna volgt een overzicht met bestanden. Elke regel bestaat uit de naam, de extensie, grootte in bytes en datum en tijd van laaste bestandswijziging. De laatste twee regels geven korte informatie over de directorie weer.

Weet dat als je de opdracht dir een bestandsoverzicht laat weergeven, sommige bestanden of directories er zo kunnen uitzien:

c:\progra~1

In feite is dit de "C:\Program files" directorie. Afwijkend van Windows, staat DOS niet toe dat de naam van een bestand of directorie groter is dan 12 tekens (inclusief de punt) of spaties bevat. WIndows verkleind de naam, zodat DOS de naam kan weergeven. Geen paniek, Windows zal de naam "C:\Program files" nog steeds correct weergeven. DOS geeft dus de eerste 6 tekens van zo een "lange" bestandsnaam of directorie weer. Mochten deze overeenkomen met een andere lange bestandsnaam of directorie, dan verhoogd DOS het nummer achter de "~" met 1.

De "dir" opdracht accepteert bepaalde parameters. Parameters definieren hoe de opdracht uitgevoerd moet worden. Als bijvoorbeeld, er meer bestanden in een directorie zijn dan op het scherm getoond kan worden, dan zal het scherm heel snel voorbij flitsen en alleen de laatste bestanden laten zien. Om dit te voorkomen kan je de parameter "/p" ingeven. Deze zorgt ervoor dat de dir opdracht stopt als een scherm helemaal vol is. Gevraagd wordt om een toets in te drukken en het volgende scherm wordt weergegeven en zo verder.
 
A:\>dir /p

Je kan ook de parameter "/ad" ingegeven. Deze toont alleen directories, geen bestanden. Voor een gedetailleerde uitleg waarom het alleen directories toont, kijk in sectie 7, Bestandsattributen". De opdracht dir accepteert meerdere parameters. Alle DOS opdrachten geven een overzicht van de parameters die zij accepteren als je achter de opdracht "/?" ingeeft.
 
A:\>dir /?

 

5. Directories

5.1 Veranderen van directorie

Als je in A:\> bent en de inhoud van subdirectorie TEST wilt zien, moet je eerst van directorie veranderen. Dit doet je door de opdracht "cd" ("cd" staat voor "change (verander) directorie"). Het moet gevolgd worden door de naam van de directorie:
 
A:\>cd test

A:\TEST>_

Let erop dat DOS NIET hoofdletter gevoelig is, met andere woorden het maakt niet uit welke combinatie van letters of hoofdletters je gebruikt. TEST is gelijk aan test wat gelijk is een tEsT, wat gelijk is een TEst, etc. Je kan nu bijvoorbeeld de dir opdracht gebruiken om de inhoud van de directorie te bekijken. om terug te gaan naar de directorie waar je vandaan kwam, geef "cd.." in. Dit zegt DOS om een stap terug te gaan in de directorie structuur:
 
A:\TEST>cd..

A:\>_

Je kan ook het pad van een directoire specificeren (pad is de volledige naam van een directorie inclusief de schijfletter):
 
A:\TEST>cd a:\hello

A:\HELLO>_

5.2 maken en verwijderen van directories

Gebruik de "md" opdracht ("make (maak) directorie") gevolgd door een naam om een directorie te maken:
 
A:\>md test 

De naam van een directorie en bestand moeten aan bepaalde regels voldoen:

  • De naam mag niet langer zijn dan 8 tekens, optioneel gevolgd door een punt en extensie van niet meer dan 3 tekens.
  • Onderstaande tekens zijn niet toegestaan omdat zij een speciale functie hebben:

  • ? * / \ : < > |
  • De volgende namen zijn niet toegestaan omdat zij een speciale functie hebben:

  • nul, con, prn
  • Naamen zijn niet hoofdletter gevoelig
Om een directorie te verwijderen gebruik je de "rd" ("remove (verwijder) directorie") opdracht:
 
A:\>rd test 

Dit werkt alleen als de directorie leeg is, dus geen bestanden of subdirectories bevat. De directorie waar je in bent kan je naturlijk niet verwijderen. Je zal dan eerst van directorie moeten veranderen.

Als je een directorie met alle bestanden en subdirectories wilt verwijderen gebruik dan het programma "deltree". (Mogelijk staat het op je opstartdiskette):
 
A:\>deltree test 

Voorzichtig! Deltree is zeer destructief! Het zal vooraf vragen om verder te gaan. Denk goed na voor je het gebruikt!
 

6. Bestandsbeheer

6.1 Verwijderen van bestanden

Een bestand kan verwijderd worden met de opdracht "del":
 
A:\>del letter.txt 

Let op dat DOS niet vraagt om bevestiging, maar het bestand gewoon verwijderd!

Als je alle bestanden in een directorie wilt verwijderen, kan je gebruik maken van zogenaamde "jokertekens":
 
A:\>del *.* 

Dit zal alle bestanden in de huidige directorie verwijderen. DOS zal eerst om een bevestiging vragen, maar alleen om alle bestanden te verwijderen! Niet voor bevestiging per bestand!
Het sterretje staat voor een willekeurige reeks van bestanden; je kan ook het ? teken gebruiken wat voor een willekeurig teken staat. Bijvoorbeeld, de volgende opdracht verwijdert alle bestanden beginnend met "letter", gevolgd door een willekeurig teken en ongeacht extensie:
 
A:\>del letter?.* 

De meeste andere DOS opdrachten accepteren ook jokerteken!
 

6.2 Kopie maken van bestanden

Een kopie maken van een bestand doe je door de opdracht "copy" (kopie):
 
A:\>copy letter.txt c:\document 

De eerste parameter is de bron, de tweede is het doel. Als je geen doel ingeeft, dan neemt DOS aan dat je de huidige diretorie bedoeld:
 
A:\>copy a:\test\letter.txt 

Dit maakt een kopie van bestand letter.txt van directorie A:\test naar de huidige directorie welke A:\ is.

Als je een bestand wilt verplaatsen (kopie maken en bron verwijderen), gebruik je de opdracht "move" (verplaats). Mogelijk staat het op je opstartdiskette. Let er wel op, dat je altijd een doel moet ingeven. Met dit als uitzondering, is de opdracht voor kopie of verplaatsen gelijk.

6.3 Bestandsnaam veranderen

Je kan de bestandsnaam veranderen met de opdracht "ren" (rename - andere naam). Let er op, dat je niet twee of meer bestanden met dezelfde naam in dezelfde directorie kunt hebben! Natuurlijk moet de bestandsnaam voldoen aan de voorwaarden van sectie 5.2.
 
A:\>ren oldname.txt newname.txt 

6.4 Bekijken en aanpassen van een bestand

De opdracht "type" geeft je de mogelijkheid om een bestand met leesbare inhoud (bijvoorbeeld tekstbestanden) te bekijken. Afhankelijk van het aantal regels, zal je het zelfde zien als bij de opdracht dir: het scherm zal voorbij flisten en de laatste regels van het bestand weergeven. Echter, de opdracht "type" kent de "/p" parameter niet. Je moet de opdracht "type" combineren met de opdracht "more" (meer). Alleen de opdracht laat ik hier zien. Het is niet van belang dat je weet hoe het werkt, maar dat het werkt.
 
A:\>type autoexec.bat | more 

Om een tekstbestand aan te passen  gebruik je de DOSeditor. Dit is de naam van edit.com (type "edit" achter de prompt). Start het gewoon. Het heeft een gebruikersinterface welke voor een Windows geen problemen zal opleveren. Als je geen muis hebt of je opstartdiskette heeft geen muis ondersteuning, dan kan je het menu met de "Alt" toets activeren. Je kan door het menu navigeren met behulp van de pijltjestoetsen en de Enter toets. Om het menu te verlaten, druk je op de Esc toets. Je tekst selecteren met het tegelijkertijd gebruik van de shift toets en de pijltjestoetssen
 

7. bestandsattributen

Ieder bestand en directorie heeft bepaalde attributen, die bepalend zijn. Bijvoorbeeld, attributen bepalen of een bestand aangepast mag worden ("read-only" (alleen lezen) attribuut), of het getoond wordt met de opdracht "dir" ("hidden" (verborgen) attribuut) of dat het een systeembestand is ("system" (systeem) attribuut). Er is ook een "archive" (archief) attribuut, maar dit alleen van belang bij het maken van backups en wordt hier niet besproken. Als laatste is er het "directorie" attribuut. Dit geeft aan dat het een directorie is. Niet meer, niet minder.
 
Normaal Alleen-lezen Verborgen Systeem
Tonen met "dir" Ja Ja Nee Nee
Wijzigen  Ja Nee Ja Ja
Verwijderen  Ja Nee Nee Nee
Kopie maken  Ja Ja Nee Ja
Naam wijzigen  Ja Ja Nee Ja

Merk op dat de "Nee" zwaarder weegt dan "Ja". Bijvoorbeeld een alleen-lezen bestand zal door "dir getoond worden, echter als het alleen-lezen en verborgen is, zie je het niet door het verborgen attribuut.

Het programma "attrib" stelt je in staat om attributen te wijzigen of te verwijderen. Als je het zonder parameter gebruikt, geeft het de attributen van alle bestanden in de directorie weer:
 
C:\test>attrib
  A  S       SYSTEM.TXT
  A   H      HIDDEN.TXT
  A    R     READONLY.TXT
  A  SHR     ALL.TXT
  A          NONE.TXT

De "A" staat voor het "acrchive" (archief) attribuut; nogmaal dit mag je vergeten. Onthoudt dat je "more" kan gebruiken als het scherm voorbij flitst. Zie sectie 6.4.

Om een attribuut te maken/verwijderen, specificeer je een "+" of "-" teken gevolgd door de letter van het attribuut en bestandsnamen of jokertekens:
 
A:\>attrib +r test.txt 
A:\>attrib +h -r letter.txt 
A:\>attrib +h -r + s *.dat 

Met de opdracht dir kan je bestanden weergeven met een specifiek attribuut. Gebruik de /a parameter meteen gevolgd door de letter van het attribuut dat je wilt zien, bijvoorbeeld:
 
A:\>dir /ah 

geeft alleen "hidden" (verborgen).
 

8. Andere DOS opdrachten

8.1 Pad

Als je een opdracht ingeeft, controleert de command interpreter eerst of deze opdracht bestaat. Als de opdracht bestaat, dan wordt deze uitgevoerd. Als de opdracht niet bestaat, dan zoekt de command interpreter naar een bestandsnaam die bestaat uit wat jij hebt ingetypt met de extensie .com (natuurlijk wordt de extensie ".com" niet toegevoegd als je opdracht al op ".com" eindigd). Als zo een bestand niet bestaat, dan wordt er gezocht naar bestanden met de extensie .exe en daarna .bat. Als geen van deze bestanden bestaat, dan komt de boodschap "Bad command or file name" op je scherm. Als, echter,zo een bestand bestaat, wordt het uitgevoerd.
Maar waar zoekt de command interpreter naar deze bestanden? Als je een directorie of bestand specificeert, dan controleert het of het in de huidige directorie bestaat. Als je het pad van het bestand niet aangeeft, dan wordt gezocht in de huidige directorie en vervolgens in de lijst van directories die bekend staat onder "path" (pad). Dit geeft aan waar command.com moet zoeken naar bestanden. Je kan het pad weergeven door "path" in te toetsen achter de DOS prompt:
 
A:\>path
PATH=A:\;A:\TEST

A:\> 

Er wordt gezocht op volgorde van weergegeven directorie.

Je kan het pad aanpassen door de opdracht "path" met een lijst van directories gescheiden door puntkomma in te geven.
Om een directorie toe te voegen aan een bestaand pad, gebruik je de opdracht gevolgd door het woord "path" tussen procent tekens ("%") gevolgd door een puntkomma en dan de directorie.
 
A:\>path
PATH=A:\;A:\TEST

A:\>path a:\hello

A:\>path
PATH=A:\HELLO

A:\>path %path%;a:\letters

A:\>path
PATH=A:\HELLO;A:\LETTERS

A:\> 

8.2 Geheugen

Gebruik het "mem" programma om de hoeveelheid gebruikt en vrij geheugen weer te geven
mem /c geeft een lijst avn geladen bestanden en de heoveelhied geheugen ze gebruiken.
Gebruik de "/p" paramter om mem te laten wachten als een scherm vol is (werkt hetzelfde als bij de opdracht "dir")

Weet dat mem een progamma is. Mogelijk staat het op je opstartdiskette.
 

8.2 Tijd en datum

Geeft  "time" (tijd) voor de huidige tijd. Je kan een nieuwe tijd ingeven of gewoon op de Enter toets drukken. Hetzellde geldt voor "date" (datum).
 

8.3 Scherm wissen

Type "cls" om het scherm te wissen.
 

9. Config.sys, autoexec.bat, io.sys en msdos.sys

De twee tekstbestanden autoexec.bat en config.sys zouden op je opstartdiskette moeten staan. Zij zijn voor een bepaald doel.

9.1 Config.sys

Dit bestand laadt bepaalde stuurprograams' in het geheugen en kan configuratie informatie voor DOS bevatten. Een regel beginnend met "device" of "devicehigh" laadt een stuurprogramma. Er is een klein verschil tussen beide regels, maar daar hoef je je niets van aan te trekken - van ons standpunt, doen ze allebei hetzelfde. Bij twijfel, gebruik "device".
De "REM" ("remark") opdracht is van groot belang. DOS slaat een regel beginnend met REM over. Dit geeft je de mogelijkheid om een stuurprogramma tijdelijk buiten werking te stellen zonder de regel te verwijderen (om de wijzigingen plaats te laten vinden, moet je opnieuw opstarten omdat DOS de inhoud van config.sys alleen tijdens het opstarten leest). Natuurlijk kan je een regel beginnend met REM gebruiken voor commentaar.

9.2 Autoexec.bat

Autoexec.bat is een "batch" (verzameling) bestand. Een batch bestand bevat een verzameling van DOS opdrachten welke opeenvolgend worden uitgevoerd. Batch bestanden zijn handig als je vaak dezelfde taken moet uitvoeren. Autoexec.bat wordt tijdens het opstarten uitgevoerd. Het kan de landcode specificeren voor je toetsenbord, bepaalde programma's uitvoeren, een welkomsboodschap weergeven, en meer. Natuurlijk kan je autoexec.bat ook aanpassen. Het kent ook de REM opdracht (zie boven).

9.3 Io.sys en msdos.sys

Dit zijn de meest belangrijke systeembestanden. Eigenlijk kunnen we stellen: io.sys is DOS. Command.com is alleen maar een gebruikersinterface naar io.sys. Msdos.sys is ook een systeembestand in oudere DOS versies. In huidige DOS versies is het een tekstbestand, dat je kan bewerken. Echter, laat deze bestanden met rust. Meestal zijn ze verborgen, terwijl ze onder geen voorwaarde verwijderd mogen worden!! Ze moeten in de hoofddirectorie van je schijf staan!


© Claymania Creations 2001 - 2008. All rights reserved.

Updated: June 4, 2001