1061 votes

Comment puis-je "commenter" une section dans un fichier batch? et comment puis-je ajouter des commentaires à un fichier batch?

J'ai un lot de fichiers qui s'exécute plusieurs scripts python qui n'modifications de la table.
Première partie de ma question: Je veux avoir les utilisateurs à commenter la 1-2 scripts python qu'ils ne veulent pas exécuter, plutôt que de les retirer à partir du fichier de commandes(de sorte que le prochain utilisateur sait que ces scripts existent comme les options!)

Deuxième: Je tiens aussi à ajouter des commentaires à apporter à leur attention plus précisément les variables dont ils ont besoin pour mettre à jour dans le fichier de commandes avant de l'exécuter. Je vois que je peux utiliser REM .... mais il semble que c'est plus pour la mise à jour de l'utilisateur avec le progrès après qu'ils ont l'exécuter. Est-il une syntaxe pour la plus appropriée d'ajouter un commentaire?

Merci à l'avance!

1154voto

snm-yah Points 2067

peut-être que cela peut être utilisé aussi, pas seulement REM

 DO ANY ACTION ::here comment
 

976voto

Rob Kennedy Points 107381

L' rem commande est en effet pour les commentaires. Il n'est pas forcément de mise à jour de quelqu'un après avoir exécuté le script. Certains auteurs de script peut l'utiliser de cette façon au lieu de echo, bien que, parce que par défaut le lot interprète imprimer chaque commande avant son traitement. Depuis rem des commandes n'ont pas à faire quoi que ce soit, il est sûr de les imprimer sans effets secondaires. Afin d'éviter l'impression d'une commande, faites-le précéder @, ou, pour l'appliquer tout au long du programme, exécutez @echo off. ( echo off Pour éviter l'impression de davantage de commandes; l' @ est afin d'éviter l'impression que la commande avant l'écho paramètre de prise d'effet.)

Donc, dans votre fichier de commandes, vous pouvez utiliser:

@echo off
REM To skip the following Python commands, put "REM" before them:
python foo.py
python bar.py

54voto

fvu Points 21471

Non, la plaine de vieux fichiers batch utiliser REM un commentaire. ECHO est la commande qui permet d'imprimer quelque chose sur l'écran.

De "commenter" les sections du fichier, vous pouvez utiliser GOTO. Un exemple de toutes ces commandes/techniques:

REM it starts here the section below can be safely erased once the file is customised
ECHO Hey you need to edit this file before running it!  Check the instructions inside
ECHO Now press ctrl-c to interrupt execution or enter to continue
PAUSE
REM erase the section above once you have customised the file
python executed1.py
ECHO Skipping some stuff now
GOTO End
python skipped1.py
python skipped2.py
:END
python executed2.py

Que puis-je dire? les fichiers de commandes sont une relique d'un temps révolu, ils sont maladroit et laid.

Vous pouvez en lire plus sur ce site.

EDIT: modification de l'exemple un peu de l'avoir à contenir les éléments vous sont apparemment à la recherche d'.

35voto

Kees Points 111

L' :: au lieu de REM a été utilisé de préférence dans les jours que les ordinateurs n'étaient pas très rapide. REM ed ligne sont lus et alors ignoré. ::'ed ligne sont ignorés. Cela pourrait accélérer votre code dans les "vieux jours". De plus, après un REM vous avez besoin d'un espace après :: vous n'avez pas.

Et comme dit dans le premier commentaire: vous pouvez ajouter des informations à n'importe quelle ligne vous en sentez le besoin

SET DATETIME=%DTS:~0,8%-%DTS:~8,6% ::Makes YYYYMMDD-HHMMSS

Comme pour le saut de pièces. Mettre REM en face de chaque ligne peut être assez fastidieux. Comme mentionné à l'aide de la fonction GOTO pour sauter des parties est un moyen facile de sauter de gros morceaux de code. Assurez-vous de définir une ÉTIQUETTE à l'endroit où vous souhaitez que le code de continuer.

SOME CODE

GOTO LABEL  ::REM OUT THIS LINE TO EXECUTE THE CODE BETWEEN THIS GOTO AND :LABEL

SOME CODE TO SKIP
.
LAST LINE OF CODE TO SKIP

:LABEL
CODE TO EXECUTE

6voto

nikunj kansara Points 1288

La déclaration REM

C'est la manière la plus courante d'écrire des commentaires. Toute ligne dans votre fichier bat qui commence par REM est complètement ignorée par le processeur de commande.

      REM This bat-file moves all files in C:\Incoming to C:\ToProcess
     REM Written by Nikunj Kansara
     REM 05/01/2003
 

Double Colons

Vous pouvez également remplacer le mot REM par deux deux-points. Ce style de commentaires n'est pas très commun, donc je suggère de rester à l'écart de celui-ci.

      :: This bat-file moves all files in C:\Incoming to C:\ToProcess
     :: Written by Nikunj Kansara
     :: 05/01/2003
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X