Créer une commande de fichier dans des fichiers batch (* .bat)

Je veux créer un fichier nommé “new text document.txt” dans le dossier %tv% utilisant un fichier de commandes ( *.bat ). Ceci est mon fichier batch:

 set tv=D:\prog\arpack96\ARPACK\SRC cd "%tv%" @CON >> "new text document.txt" set tv= 

Bien que je puisse vraiment créer le fichier dans %tv% , mais quand je lance le fichier de commandes ci-dessus, je vais recevoir un message d’erreur disant

” n’est pas reconnu en tant que commande interne ou externe, programme exploitable ou fichier de commandes.

Y a-t-il de toute façon pour se débarrasser de ce message d’erreur? Ou je crée le fichier en utilisant la mauvaise commande?

Pour obtenir un fichier vraiment vide sans avoir à fournir d’interaction avec l’utilisateur, vous pouvez utiliser la commande set /p avec une petite astuce:

 set tv=c:\documents and settings\administrator cd "%tv%" "new text document.txt" (set /p tv=) 

Le set /p demande à l’utilisateur d’entrer dans la variable tv après avoir affiché l’invite après le caractère = .

L’invite étant vide, aucune invite ne s’affiche. Comme vous lisez à partir de nul, il n’attend pas l’interaction de l’utilisateur. Et vous pouvez stocker la chaîne vide directement dans le tv , éliminant ainsi le besoin de la désactiver.


En fait, après quelques reflections, il y a un moyen plus facile. J’ai utilisé ce truc dans le passé, car c’est la seule façon dont je sais faire écho au texte sans qu’une nouvelle ligne soit ajoutée (idéal pour les barres de progression dans la console). Mais si tout ce que vous voulez est un fichier vide, vous pouvez probablement vous en sortir avec:

 copy /y nul "new text document.txt" 

La copy simplement le contenu du périphérique nul (en fait un fichier vide) dans votre nouveau nom de fichier. Le /y de s’assurer qu’il est écrasé sans déranger l’utilisateur.

Créez un fichier vide à partir d’un fichier * .bat – cela a fonctionné pour moi.

 echo off > test.txt 
 type nul > file.txt 

file.txt devrait être créé vide

ou la réponse de paxdiablo

con est le nom de fichier Windows spécialisé et il ne doit pas être utilisé.

copie con >> nomfichier.txt

doit vous demander d’entrer le texte et vous pouvez enregistrer le texte en tapant Ctrl Z.