Was ist mit dieser Forfiles-Befehlssyntax falsch?

2

Ich habe versucht, den folgenden Befehl FORFILES auszugeben, und ich habe einen Fehler erhalten, der mich beunruhigt (nach dem Befehl aufgeführt).


C:\Windows\system32>FORFILES /P %WINDIR%\servicing\Packages /M Microsoft-Windows-InternetExplorer-*9.*.mum /c "cmd /c echo Uninstalling package @fname && start /w pkgmgr /up:@fname /norestart"

ERROR: Invalid syntax. '/c' option is not allowed more than '1' time(s). Type "FORFILES /?" for usage.


Ich habe den Befehl ein paar Mal durchgesehen, und er scheint richtig zu sein, ist es aber eindeutig nicht. Ich habe die Pfade und Argumente überprüft. Ich führe die Befehlszeile als Administrator unter Windows 7 32-Bit SP1 aus. Jeder Einblick wäre sehr dankbar.

Zach L
quelle

Antworten:

3

Ich denke, Sie haben die Syntax in cmd kopiert und eingefügt. Sie haben wahrscheinlich ein Problem mit dem intelligenten Angebot. Geben Sie das Skript selbst erneut ein, anstatt es zu kopieren und einzufügen. Oder kopieren Sie es in den Notizblock, löschen Sie die Anführungszeichen und setzen Sie die Anführungszeichen zurück. dann kopiere das und füge es in cmd ein. Klingt dumm, ist aber ein bekanntes Problem.

jmc302005
quelle
1

Sie müssen das Escape-Zeichen ^ für einige andere Zeichen wie diese verwenden:

FORFILES /P "%WINDIR%\servicing\Packages" /M "Microsoft-Windows-InternetExplorer-*9.*.mum" /c "cmd ^/c echo ^"Uninstalling package @fname^" ^&^& start ^/w pkgmgr ^/up:@fname ^/norestart"

Dann sollte es funktionieren. Ich versuche es nicht mit Ihrer Leitung, habe aber manchmal den gleichen Fehler bekommen.

Mae
quelle