2010-07-07 17 views
1

J'utilise windows cmd et je suis en train de faire ce qui suit:CMD - comment écrire%

REG ADD "HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ AeDebug"/v débogueur/t REG_SZ /d "% ENVIROMENT VAR% utils \ cdb.exe -pv -p% ld -c" "" .dump /u/ma c: \ utils \ 1.dmp; qd "" ""

Comme vous voyez, premier environnement varialbe est entre% et est développé par cmd, alors% ld devrait être écrit tel quel. Cependant, il est considéré comme le début de varialbe par CMD, donc cela échoue. Je suppose que j'ai besoin d'ajouter un caractère d'échappement, mais il a échoué.

Comment régler ceci correctement?

Répondre

2

Utilisez un caret (^) pour échapper à l'% de sorte que la ligne problématique devient:

REG_SZ/j "% eNViroNNeMeNt VAR% utils \ Cdb.exe pv -p^-c% ld """. dump/u/ma c: \ utils \ 1.dmp, QD "" »"

Paddy

+0

La syntaxe cmd.exe est tellement ésotérique –

+0

strangly cela ne fonctionne pas. J'ai résolu cela en utilisant %%. – user384300

+1

Très étrange - quel système d'exploitation? Vous tapez également ceci dans la ligne de commande directement ou en utilisant un fichier bat (à partir de la mémoire %% travaille à partir d'un fichier,^si vous tapez directement –