"Net share xyz / DELETE" schlägt fehl, wenn eine Datei auf dieser Freigabe verwendet wird

14

Ich versuche mit NAnt, eine Freigabe zu trennen (um sie an eine andere Stelle umzuleiten), aber mein Versuch schlägt fehl:

[exec] Starting 'net (SHARE ad3-config /DELETE)' in 'c:\NAntDistributorBuilds\LocalInstallations\ad3config_master_1.0.19.4006'
[exec] Users have open files on ad3-config.  Continuing the operation will force the files closed.
[exec] No valid response was provided.
[exec] 
[exec] Do you want to continue this operation? (Y/N) [N]: 
[exec] c:\NAntDistributorBuilds\LocalInstallations\ad3config_master_1.0.19.4006\install.build(32,6):
[exec] External Program Failed: net (return code was -1)
[exec] Starting 'net (SHARE ad3-config="c:\NAntDistributorBuilds\LocalInstallations\ad3config_master_1.0.19.4006" /UNLIMITED)' in 'c:\NAntDistributorBuilds\LocalInstallations\ad3config_master_1.0.19.4006'
[exec] The name has already been shared.
[exec] 
[exec] More help is available by typing NET HELPMSG 2118.
[exec] 

Ich kann keine Möglichkeit finden, die Antwort 'Ja' über die Befehlszeile bereitzustellen - es gibt keine / Q-Schalter. Der Zielcomputer ist ein Windows 2003-Server. Entspricht DOS dem Unix-Befehl 'yes'?

Wenn ich es auf der Kommandozeile machen kann, kann ich es möglicherweise in NAnts exec-Task machen.

Andrew Matthews
quelle
Entschuldigung für den durcheinandergebrachten Strom des Bewusstseins. : S
Andrew Matthews
Benutzt du command.comauch?
Hallo71
Tatsächlich ist dies Teil eines Build- und Bereitstellungstools. Ich benutze NAnt (ein bisschen wie make), um den Befehl net direkt aufzurufen.
Andrew Matthews

Antworten:

17

Die Lösung besteht darin, / Y einzugeben, um das Löschen zu erzwingen. Dies ist leider nicht dokumentiert .

Nick Westgate
quelle
1

Kannst du nicht einfach echo Y? Wenn cmd nicht verwendet wird, führen Sie es einfach mit aus %COMSPEC% /c echo Y | net....

Hallo71
quelle
Hallo Hallo71, leider hat es nicht geklappt:
Andrew Matthews
der gleiche Fehler "keine Antwort zur Verfügung gestellt"
Andrew Matthews