2016-10-06 4 views
0

Ich versuche, die Zeit zu verkürzen, die Autodesk für die Mitarbeiter bei der Arbeit benötigt. Dazu musste ich zuerst ein Netzlaufwerk zuordnen und dann einige Dateien vom Netzlaufwerk auf Autodesk auf dem Laufwerk des Benutzers C kopieren. Da jedoch jeder PC anders sein wird, weil er in das Benutzerprofil eingeht; Ich musste eine Eingabevariable machen, um den Namen aufzunehmen.Wie nehme ich Benutzereingaben und füge sie in einen Kopierverzeichnisprozess in einer Batch-Datei ein?

Das ist, was ich habe:

@echo Create new K: drive mapping 
@net use K: \\vasalacad\autocad\library 
@echo Enter User ID "firstname.lastname" 
@set /p UserID="" 
@copy /y "K:\setups\tmco1.dwt" "C:\Users\"UserID"\AppData\Local\Autodesk\AutoCAD Electrical 2015\R20.0\enu\Template" 
@copy /y "K:\setups\BlackPlot.ctb" "C:\Users\"UserID"\AppData\Roaming\Autodesk\AutoCAD Electrical 2015\R20.0\enu\Plotters\Plot Styles" 
:exit 
@pause 

Was ich das bekam, war:

Create new K: drive mapping 
The command completed successfully. 
Enter User ID "firstname.lastname" 
******.******* 
The system cannot find the path specified. 
     0 file(s) copied. 
The system cannot find the path specified. 
     0 file(s) copied. 
Press any key to continue . . . 

ich die Benutzereingabe bearbeitet, so dass ich nicht auf dem die Namen angezeigt werden würde Foren. Jede Hilfe würde sehr geschätzt werden. Danke im Voraus.

Antwort

1

Verwenden Sie Ihre env Variable richtig mit %:

@copy /y "K:\setups\tmco1.dwt" "C:\Users\%UserID%\AppData\Local\Autodesk\AutoCAD Electrical 2015\R20.0\enu\Template" 
@copy /y "K:\setups\BlackPlot.ctb" "C:\Users\%UserID%\AppData\Roaming\Autodesk\AutoCAD Electrical 2015\R20.0\enu\Plotters\Plot Styles" 

Alternativ Sie das Skript für Ihre Benutzer bereitstellen könnte, und in diesem Fall keine Wechselwirkungen, und sie tun würden (keine Notwendigkeit, ein Laufwerk BTW zu montieren):

@copy /y "\\vasalacad\autocad\library\setups\tmco1.dwt" "%USERPROFILE%\AppData\Local\Autodesk\AutoCAD Electrical 2015\R20.0\enu\Template" 
@copy /y "\\vasalacad\autocad\library\setups\BlackPlot.ctb" "%USERPROFILE%\AppData\Roaming\Autodesk\AutoCAD Electrical 2015\R20.0\enu\Plotters\Plot Styles" 

OR: eine Textdatei (hier users.txt), die 1 Benutzer pro Zeile erstellen und die Dateien in einer Schleife kopieren:

@echo off 
set SRC=\\vasalacad\autocad\library\setups 
for /F %%a in (users.txt) do (copy /y "%SRC%\tmco1.dwt" "C:\Users\%%a\AppData\Local\Autodesk\AutoCAD Electrical 2015\R20.0\enu\Template" 
copy /y "%SRC%\BlackPlot.ctb" "C:\Users\%%a\AppData\Roaming\Autodesk\AutoCAD Electrical 2015\R20.0\enu\Plotters\Plot Styles" 
) 
+0

Danke, es funktioniert. – bestgeek1

Verwandte Themen