Les données enregistrées sur le disque s'y trouvent sous forme de documents appelés "fichiers". Initialement, le mot fichier signifie "collection de fiches". Pour un non initié, le terme prête à confusion car en informatique le mot fichier est utilisé pour désigner UN SEUL document. " Fichier " et " Document " sont ici des synonymes.
Les documents sont regroupés dans des répertoires ( directories)
aussi appelés dossiers.
Ces derniers sont organisés selon une structure hiérarchique
arborescente. Chaque répertoire peut contenir d'autres répertoires
qui à leur tour peuvent contenir d'autres répertoires encore.
\ |--Projets | |--ToDo | |--Urgent | |--Cours | |--OS |--Math
Les fichiers et les répertoires ont des noms qui à l'époque du DOS avaient le format 8.3 : huit caractères tout au plus suivis d'un point et de maximum trois caractères d'extension.
ex.: Chap1.txt
Ces noms ne pouvaient pas contenir de caractères accentués ni de caractères spéciaux tels que $, §, #, l'espace etc. seul le caractère blanc souligné '_' était admis.
Ces restrictions ont disparu depuis Windows 95. Les espaces sont même autorisés dans les noms qui peuvent désormais être longs mais ces espaces sont toujours mal interprétés par les commandes du DOS. Il faudra mettre ces noms qui contiennent des espaces entre guillemets pour que l'interpréteur de commande ne considère pas comme des noms de fichiers distincts.
ex.: COPY "Lettre au Père Noël.pdf" C:\Courier\archives
Un nom tel que LettrePereNoel.pdf sera plus facile à manipuler pour l'écriture des scripts ou pour la portabilité du document vers d'autres systèmes. Recourez de préférence aux conventions recommandées en programmation pour nommer des variables: une majuscule pour chaque nouveau mot.
Le répertoire racine (root), celui qui est à base du disque n'a pas vraiment de nom. On le désigne par le caractère back-slash '\'.
Le nom complet d'un fichier est son nom précédé du chemin complet qui permet de le retrouver depuis le répertoire racine.
ex.: C:\Cours\OS\Chap1.txt
C: est le nom du disque,
le premier
\
est le sigle du répertoire racine,
Cours est le nom d'un répertoire et
OS celui de l'un de ses sous-répertoires, les
autres \ sont des séparateurs, et enfin
Chap1.txt
est un nom de fichier.
Notons aussi que le DOS n'est pas sensible à la casse. Ce qui signifie
non pas qu'il est particulièrement robuste mais que pour le DOS
les majuscules et les minuscules, c'est du pareil au même.
Les attributs sont des informations qui sont enregistrées avec le nom du fichier.
R | read only | Lecture seule. Protégé contre toute modification |
H | hidden | Caché ou plus exactement " masqué " car il est tout de même possible de demander leur affichage. ( DIR /a ) |
S | system | Attribut réservé à certains fichiers sensibles |
A | archive | Attribut pour organiser les sauvegardes. Cet attribut se positionne dès qu'on modifie le fichier. Les commandes de sauvegarde peuvent l'effacer dès que la sauvegarde est accomplie. |
Ces attributs sont visibles sous Windows dans les propriétés
des fichiers accessibles par un clic-droit sur le nom du fichier, choisir
ensuite la rubrique " Propriété " dans le menu
contextuel.
C:\>_
L'invite ou prompt du DOS est le message d'attente qui signale
que le système est prêt à recevoir une commande. L'invite
indique la position du répertoire actif : le nom du disque par
défaut (ici C: ) suivi du chemin complet depuis le répertoire
racine représenté par le caractère " back-slash
" '\'.
Le caractère d'attente '>'
marque la fin du nom du répertoire courant.
Le curseur qui clignote indique où arriveront les caractères
tapés au clavier.
Une ligne de commande est en quelque sorte une phrase qui se tape à
la suite de l'invite.
Elle est de la forme suivante :
Commande [/-options] [arguments]
La ligne de commande est analysée par l'interpréteur de commande. Les espaces y séparent les mots des commandes et des arguments. Prenez l'habitude de taper ces espaces, certaines versions du DOS tolèrent l'absence de certains espaces, d'autres pas. Si vous prenez l'habitude de ne pas taper ces espaces, vous risquez, en changeant de machine, de ne pas pouvoir faire exécuter une commande que pourtant vous avez l'habitude de voir fonctionner ailleurs.
- Une ligne de commande commence toujours par un mot clé,
ce mot représente une action que le système d'exploitation
est appelé à faire. Le grammairien Mr Grevisse appellerait
cela un verbe.
- Viennent ensuite les options parfois aussi appelées paramètres
ou commutateurs. Elles sont facultatives, elles sont toujours représentées
par un " slash" suivi d'une lettre. La fonction de l'option
est de modifier la manière dont la commande va se réaliser.
S'il vous arrivait de devoir expliquer ce rôle à un linguiste,
dites-lui que c'est un adverbe.
- Les arguments viennent en complément. Dans la présentation
de la syntaxe des commandes ces arguments sont mis entre crochets pour
indiquer que leurs présences ne sont pas toujours indispensables.
|
|
L'interpréteur de commande est un programme qui se nomme COMMAND.COM
si vous travaillez avec une version DOS ou avec Windows 9x. Les versions
ultérieures de Windows renferment un second interpréteur
CMD.EXE dont les commandes ont été revisitées. Certaines
commandes sont apparues ou ont disparues d'une version à l'autre.
Ainsi la commande HELP a disparu dans Windows 98 mais est à nouveau
disponible avec les versions ultérieures.
L'interpréteur de commande CMD.EXE accepte les mêmes commandes
que l'interpréteur COMMAND.COM mais autorise une plus grande variété
d'options pour chacune d'elles. Ces potentialités nouvelles sont
appelées les extensions de commandes. Grâce à elles
les manipulations de variables sont plus aisées et l'écriture
de fichiers de commande s'en trouve un peu moins rébarbative. On
dispose d'un langage " DOS " plus ressemblant aux autres langages
évolués. Il suffit pour s'en convaincre de demander l'aide
sur la commande SET (tapez SET / ?) ; suivant que la commande est interprétée
par COMMAND.COM ou par CMD.EXE l'aide fait 9 ou 180 lignes.
Comment lancer l'un ou l'autre de ces interpréteurs ?
Avec Windows 9x, Command.com est le seul interpréteur.
Démarrer > Programme > Commandes MS-DOS
ou Démarrer > Exécuter > Command
Avec Windows 2000 ou Windows XP
Démarrer > Programmes > Accessoires > Invite
de commande
ou Démarrer > Exécuter > Cmd (ce qui revient
au même)
ou Démarrer > Exécuter > Command
A moins de devoir écrire des fichiers de commandes devant être
compatibles avec Windows 98, il n'y a aucune raison d'utiliser l'interpréteur
COMMAND.COM
Il s'agit d'une trentaine de mots clés intégrées
à l'interpréteur de commandes. Ce sont les commandes
les plus courantes telles que CD, CLS, COPY,
DATE, DEL, DIR, ECHO,
EXIT, MD, MOVE,
PAUSE PATH,
PROMPT, REM, REN,
RD, SET, TIME, TYPE, VER ou VOL.
Un ordinateur qui a démarré à partir d'une disquette
de démarrage contenant l'interpréteur COMMAND.COM est capable
de comprendre toutes ces commandes.
Ce sont les commandes que l'interpréteur ne sait pas exécuter
à lui seul. Les commandes telles que ATTRIB,
COMP, DEBUG, EDIT, FC, FDISK, FIND,
FORMAT, LABEL,
MEM, MODE, MORE, SYS,
TREE ou
XCOPY sont des commandes externes. Les routines
qui exécutent ces commandes ne font pas partie du fichier COMMAND.COM
; si l'ordinateur a démarré à partir d'une disquette
de démarrage, il faudra que celle-ci contienne le fichier FORMAT.COM
ou EDIT.COM pour que ces commandes externes soient disponibles. Ce sont
des programmes livrés avec le DOS. Les programmes tels que DEBUG
ou EDIT sont parfois appelés " utilitaires", ce sont
des applications que des commandes.
Fichiers " .bat "
Les commandes du DOS peuvent être enregistrées dans un fichier texte auquel on donne l'extension " .bat " ou " .cmd " . Ces fichiers sont alors en quelque sorte des programmes interprétés, des " scripts ".
Ce chapitre a pour objectif de classifier les commandes pour en donner une vue d'ensemble facile à appréhender. Nous n'allons pas reprendre ici l'intégralité des commandes du DOS. Tous les détails sur chaque commande sont disponibles en tapant le nom de la commande suivi de l'option "point d'interrogation" /? , la seule option qui est reprise par toutes les commandes.
La commande HELP qui existait pourtant dans les anciennes versions DOS a disparu dans les versions Windows 98 et Millénium pour réapparaître dans les versions ultérieures. Cette commande Help donne la liste de toutes les commandes du DOS avec une ligne d'explication pour chacune.
La version de l'aide avec Windows 95 était particulièrement
sympathique puisqu'elle lançait un petit programme affichant l'aide
avec des liens hypertextes. Ce programme marche encore si vous le recopiez
dans les systèmes plus récents mais bien entendu ne donne
pas les dernières variantes des commandes telles que les extensions
de commandes de l'interpréteur CMD.EXE .
DIR "Directory " - Affiche la liste des fichiers et sous répertoires
La commande DIR possède de nombreuses options abondament commentées (en
anglais) sur le site de microsoft dont le lien est indiqué ci-dessus. Pensez à
taper DIR /? pour obtenir la liste commentée(en français) de toutes ces options.
Les options /a , /p et /s sont particulièrement utiles.
/a | est utile pour afficher les fichiers cachés. |
/p | l'affichage s'interrompt dès que
l'écran est plein. Appuyez sur une touche pour continuer ... |
/s | provoque aussi l'affichage dans les sous-réperoires.
Voici comment lancer la recherche du fichier Perdu.txt dans les sous-répertoires du disque C. C:\>DIR /s Perdu.txt |
La commande DIR est la commande idéale pour s'exercer avec les caractères génériques. L'étoile représente une suite quelconque de caractères, le point d'interrogation ne se substitue qu'à un seul caractère.
Exemples :
DIR | Affiche tous les noms de fichiers ou de sous-répertoires présents dans le répertoire courant. |
DIR \Prj | Affiche tous les noms de fichiers ou de sous-répertoires présents dans le répertoire \Prj |
DIR *.txt | Affiche tous les noms de fichiers ou de sous-répertoires dont l'extension est "txt" |
DIR *. | Affiche tous les noms de fichiers ou de sous-répertoires qui n'ont pas d'extension. |
DIR ABC??.* | Affiche tous les noms de fichiers commençant par ABC suivi de deux autres lettres quelle que soit l'extension |
DIR ABC*.* | Affiche tous les noms de fichiers commençant par ABC suivi d'un nombre quelconque de caractères et quelle que soit l'extension. |
DIR /s /p *.exe | Recherche de tous les exécutables y compris dans les sous-répertoires, affichage pages par pages. |
DIR /a | Affiche tous les noms de fichier y compris ceux des fichiers cachés. |
DIR /ah | Affiche uniquement les noms des fichiers cachés |
TREE Affiche l'arborescence des sous-répertoires
(La commande TREE n'est pas disponible avec Windows 98 ou Millénium)
CD ou CHDIR "Change Directory " - Change de répertoire
C:\>CD
Windows C:\Windows\> |
=> Le répertoire \Windows devient le répertoire par défaut
Cas particuliers :
CD .. = allez au répertoire
parent ; les deux points " .. "
équivalent à
CD \ = allez au
répertoire racine
MD ou MKDIR "Make directory" - Crée un répertoire
Créer un sous-répertoire appelé Fred à la racine du disque C
C:\>MD
Fred C:\> |
Créer un sous-répertoire "Projets" dans le répertoire actif de la disquette
C:\>MD
A:Projets C:\> |
Créer un répertoire appelé "Nouveau Dossier", il faut mettre ce nom entre guillemets !
C:\>MD
"Nouveau Dossier" C:\> |
Attention ! Les espaces sont pris par DOS pour des séparateurs.
Sans ces guillemets voici ce que cela donnerait en DOS "pur" :
C:\>MD
Nouveau Dossier Trop de paramètres - Dossier C:\> |
La commande sans guillemets serait acceptée par les versions plus
récentes de Windows mais la commande créerait deux répertoires
" Nouveau " et " Dossier "
RD ou RMDIR "Remove directory " - Supprime un répertoire
Cette commande ne fonctionne que si le répertoire est vide.
Le répertoire racine "\"
ne saurait être supprimé.
NB. Une commande externe DELTREE est fournie
avec certaines versions du DOS pour supprimer d'un coup tous les fichiers
et sous-répertoire en une seule commande.
COPY Copies de fichiers
COPY Source Destination
Copie d'un fichier source vers une autre destination ou sous un autre
nom
Source est un nom de fichier.
Destination est soit un nom de fichier ( le nom de la copie) avec
ou sans chemin complet, soit un nom de répertoire ou d'unité
où doit aboutir la copie qui aura le même nom que le fichier
source.
Exemples :
C:\Test>COPY \Windows\Readme.txt A:\ |
Source : le fichier Readme.txt du répertoire C:\Windows
Destination : A:\Readme.txt
C:\Test>COPY A:\Readme.txt |
Source : le fichier Readme.txt en provenance de A:\
Destination non précisée donc dans le répertoire actif C:\Test\Readme.txt
MOVE Source Destination
Déplace un fichier.
Cette commande qui n'existait pas en DOS " pur " peut aussi
servir à renommer un fichier ou un répertoire
REN ou RENAME
REN Nom1 Nom2
Commande pour renommer un fichier, un répertoire
ou un groupe de fichiers ou de répertoires
Exemples :
C:\Test>Ren Readme.txt Lisezmoi.txt |
C:\Test>Ren *.txt *.old |
Change toutes les extensions des fichiers " .txt "
en " .old "
DEL "Delete " ou ERASE
Suppression de fichiers
Exemples :
DEL Readme.txt | Supprime le fichier Readme.txt |
DEL Temp\*.* | Supprime tous les fichiers du répertoire Temp |
DEL *.bak | Supprime tous les fichiers d'extension " .bak " |
DEL /S Fred\*.txt | Supprime tous les fichiers
.txt du répertoire Fred et de ses sous-répertoires. NB. Il serait prudent de visualiser au préalable tous les noms des fichiers qui seraient supprimés par la commande fort semblable : DIR /S Fred\*.txt |
ATTRIB
Affiche ou modifie des attributs de fichier.
Exemples :
ATTRIB \Temp | Affiche les attributs et les noms de tous les fichiers du répertoire Temp ( = ATTRIB \Temp\*.* ) |
ATTRIB | Affiche les attributs et les noms de tous les fichiers du répertoire courant. ( = ATTRIB *.* ) |
ATTRIB +R Toto.txt | Met le fichier " Toto.txt " en lecture seule |
ATTRIB +h Secret.txt | Masque le nom du fichier "Secret.txt" |
ATTRIB -h -s Truc.sys | Enlève les attributs système et caché du fichier "Truc.sys" |
XCOPY Copies de fichiers ou de répertoires
XCOPY Source Destination
Cette extension de la commande COPY permet aussi bien la copie de fichiers que de répertoires. Elle dispose de très nombreuses options.
Les copies de répertoires nécessitent les options /S , /T et /E
/S | Copie les répertoires et sous-répertoires à l'exception des répertoires vides. |
/E | Copie les répertoires et sous-répertoires, y compris les répertoires vides. |
/T | Crée la structure de répertoires mais ne copie pas les fichiers. N'inclut pas les répertoires ou sous-répertoires vides. |
/T /E | Crée la structure de répertoire sans recopier les fichier en incluant les sous répertoires vides. |
Quelques options utiles pour les sauvegardes
/A | Copie uniquement les fichiers ayant l'attribut archive, ne modifie pas l'attribut. |
/M | Copie uniquement les fichiers ayant l'attribut archive, désactive l'attribut archive. |
/D:j-m-a | Copie les fichiers modifiés à partir de la date pécifiée. Si aucune date n'est donnée, copie uniquement les fichiers dont l'heure source est plus récente que l'heure de destination. |
/U | Copie seulement les fichiers dont une version antérieure existe déjà dans la destination. |
TYPE NomFichier
Affiche à l'écran tout le contenu d'un fichier texte.
MORE NomFichier
Affiche le fichier écran par écran. L'affichage s'interrompt dès qu'un écran est complet, il faut presser la touche espace pour passer à l'écran suivant.
FIND "chaîne" NomFichier
Recherche une chaîne de caractères dans un ou des fichiers.
Exemples :
FIND "ABCD" *.txt | Recherche tous les fichiers .txt qui contiennent la chaîne de caractère ABCD |
FIND /i "ABCD" *.txt | Idem en ignorant la distinction majuscules / minuscules |
FC Fichier_1 Fichier_2
Compare les deux fichiers et affiche leurs différences
Les disques sont désignés par une lettre suivie de deux points. A: et B: sont réservés aux disquettes, C: et suivants désignent le disque dur ou des lecteurs réseaux. (Un lecteur réseau est un dossier partagé sur le réseau auquel on a attribué une lettre pour s'y référer comme s'il s'agissait d'un disque)
Lecteur: Changement de disque actif
Tapez la lettre qui représente le lecteur suivi de deux points.
Le résultat apparaît dans l'invite.
C:\Projets\>A: A:\>C: C:\Projets\> |
Permet de donner un nom ( une étiquette) à un disque ou une disquette. Ce nom ne peut comporter que 11 caractères maximum.
C:\Projets\>LABEL A: Octet |
Affiche le nom du disque et son numéro de série
C:\>VOL A: Le volume dans le lecteur A s'appelle OCTET Le numéro de série du volume est 3C1A-0926 |
La commande Format sert à préparer un disque ou une disquette pour que le système d'exploitation puisse l'utiliser ensuite. Concrètement, cela veut dire que le support est divisé en pistes et en secteurs. Format y organise ensuite le secteur d'amorçage, le répertoire racine, la FAT et une copie de la FAT.
C:\>FORMAT A: Insérez un nouveau disque pour le lecteur A: |
La commande SYS n'est plus reconnue par les versions récentes
de Windows.
Sous DOS et Windows 9x, elle servait à créer des disques
ou disquettes système. Une disquette système est une disquette
qui contient l'interpréteur de commande et deux fichiers systèmes
cachés.
Exemple réalisé sous Windows 98 :
C:\>SYS A: Système transféré C:\>DIR A: /a Le volume dans le lecteur A est OCTET Le numéro de série du volume est 2823-5867 Répertoire de A:\ IO SYS 222 390 05/05/99 22:22 IO.SYS DRVSPACE BIN 69 127 05/05/99 22:22 DRVSPACE.BIN MSDOS SYS 6 14/11/03 5:02 MSDOS.SYS COMMAND COM 95 874 05/05/99 22:22 COMMAND.COM 4 fichier(s) 387 397 octets 0 répertoire(s) 1 068 544 octets libres C:\> |
Le PATH ou "chemin de recherche" définit la liste des répertoires où l'interpréteur de commandes doit chercher les fichiers exécutables.
Voici par exemple ce que l'on pourrait obtenir en tapant la commande PATH
C:\>path PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\DJGPP\BIN C:\> |
La commande PATH employée sans paramètre rend une liste des chemins vers différents répertoires. Des points-virgules jouent le rôle de séparateurs entre les répertoires de la liste.
L'interpréteur de commandes, quand il recherche un fichier exécutable, commence par consulter le répertoire courant ; si le fichier recherché ne s'y trouve pas, la recherche se poursuit en scrutant dans l'ordre les répertoires successifs indiqués par le PATH.
Voici ce que serait la réponse si la commande invoquée ne correspond ni à une commande interne ni à un fichier exécutable :
C:\>xyz 'xyz' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes. C:\> |
Les fichiers exécutables ont pour extension .com, .exe ou .bat et c'est dans cet ordre que l'interpréteur les considère. Si donc le répertoire courant contient un fichier xyz.com et un fichier xyz.bat, la commande xyz provoquera l'exécution de xyz.com au lieu de celle de xyz.bat (moins prioritaire)
Comment ajouter un répertoire supplémentaire dans le Path ?
Fort de votre expérience en mode invite de commande, vous décider d'installer quelques utilitaires dans un répertoire C:\Util que vous venez de créer. Le chemin de ce répertoire doit être ajouté au PATH.
C:\>PATH %PATH%;c:\Util C:\> |
Cette modification du PATH n'est cependant valable que pour la session
DOS courante. Il faudrait insérer cette commande dans le fichier
AUTOEXEC.BAT pour qu'elle soit exécutée à chaque
démarrage.
Remarque: PATH est à la fois une commande et le nom d'une variable
d'environnement. Elle aurait pu être modifiée comme
suit :
C:\>SET PATH=%PATH%;c:\Util C:\> |
Sous Windows 2000 ou XP, il est préférable d'oublier Autoexec.bat.
La procédure pour modifier la variable d'environnement PATH est
maintenant la suivante:
Clic-droit sur Poste de travail >
Propriété ( ou Panneau
de configuration > Système)
> Onglet Avancé >
Bouton Variables d'environnement ...
Modifiez la variable système PATH si en temps qu'administrateur
vous y êtes autorisé. Si vous n'êtes pas administrateur
ou si cette modification ne concerne personne d'autre que vous ajoutez
ou modifiez la variable utilisateur PATH
Interface en ligne de commande
Un cours très complet, une trentaines de chapitres, sur le site http://windows.developpez.com/
La ligne de commande Windows et les fichiers batch
I. A propos de ce cours
II. Plan du cours
III. Introduction à l'invite de commande
IV. Liste des commandes
V. Les commandes utilisables par tous
VI. Configurer la fenêtre d'invite de commande
VII. L'invite Démarrer-Exécuter
VIII. Gestion des fichiers à partir de la ligne de commande - Assoc et Ftype
IX. Xcopy et ses applications
X. Les commandes réseau "net" dans Windows XP
XI. Netstat
XII. Netsh, la console des services Réseau
XIII. TCP/IP et outils Réseau
XIV. Utilitaire de système de fichiers - Fsutil.exe
XV. La console de récupération de Windows XP
XVI. Commandes de la console de récupération
XVII. Gérer le Registre Windows à partir de l'invite de commande avec "Reg.exe"
XVIII. Gérer les Services Windows avec la commande de contrôle des services SC
XIX. Gérer les programmes de Windows à partir de l'invite de commande : Tasklist
XX. Gérer les programmes de Windows : Tskill et Taskkill
XXI. Exécuter des fichiers VBScripts et JScript à partir de l'invite de commande
XXII. Outils utiles pour Windows XP provenant du Resource Kit de Windows Server 2003
XXIII. Support Tools de Windows XP SP2
XXIV. Les fichiers Batch (scripts) dans Windows
XXV. Des fichiers batch plus puissants : Partie 1 - Branchements et boucles
XXVI. Des fichiers batch plus puissants : Partie 2 - Itérations avec "For"
XXVII. Variables dans l'invite de commandes Windows
XXVIII. Doskey dans l'invite de commandes Windows XP
XXIX. PowerShell dans Windows XP
XXX. Astuces pour l'utilisation de l'invite de commande Windows