Verzeichnis kopieren
Verzeichnis kopieren
Hi nochmals,
kann mir jemand sagen, wie ich ein Verzeichnis per Opsi-Paket auf einen Rechner kopieren kann....etwa nach c:\Verzeichnis? Also ich weiß nur nicht, wie ich das im setupscript starten muss. Der Befehl würde schlicht lauten: copy "%ScriptPath%\VERZEICHNIS" "c:\VERZEICHNIS"
Was mach ich falsch?
Vielen Dank für jede Hilfe
Stefan
kann mir jemand sagen, wie ich ein Verzeichnis per Opsi-Paket auf einen Rechner kopieren kann....etwa nach c:\Verzeichnis? Also ich weiß nur nicht, wie ich das im setupscript starten muss. Der Befehl würde schlicht lauten: copy "%ScriptPath%\VERZEICHNIS" "c:\VERZEICHNIS"
Was mach ich falsch?
Vielen Dank für jede Hilfe
Stefan
Re: Verzeichnis kopieren
Hallo Stefan,
sofern ich die Arbeitsweise eines Opsi-Skripts richtig verstanden habe, sollte das einfache Kopieren von Dateien so gehen:
1) Ablegen der zu kopierenden Dateien im Ordner CLIENT_DATA des entsprechenden Opsi-Pakets, z.B. in einem Unterordner DATEIEN
2) Im Skript:
DefVar $InstallDir$
Set $InstallDir$ = "%SystemDrive%\Zielordner"
copy -s "%ScriptPath%\DATEIEN\*.*" "$InstallDir$"
Zielordner ist der Ordner, wo die Dateien auf dem Client am Ende landen sollen. Die Option -s sorgt beim Kopieren dafür, dass auch Unterordner kopiert werden.
Viele Grüße,
Uwe
sofern ich die Arbeitsweise eines Opsi-Skripts richtig verstanden habe, sollte das einfache Kopieren von Dateien so gehen:
1) Ablegen der zu kopierenden Dateien im Ordner CLIENT_DATA des entsprechenden Opsi-Pakets, z.B. in einem Unterordner DATEIEN
2) Im Skript:
DefVar $InstallDir$
Set $InstallDir$ = "%SystemDrive%\Zielordner"
copy -s "%ScriptPath%\DATEIEN\*.*" "$InstallDir$"
Zielordner ist der Ordner, wo die Dateien auf dem Client am Ende landen sollen. Die Option -s sorgt beim Kopieren dafür, dass auch Unterordner kopiert werden.
Viele Grüße,
Uwe
Re: Verzeichnis kopieren
danke.....meine Versuche bringen folgenden Fehler:
[2] [Nov 19 16:29:24:991] Syntax Error in Section: Actions (Command in line 40 origin: \\OPSISERVER\opsi_workbench\jdownload\CLIENT_DATA\setup32.opsiscript line: 41): copy -> undefined
[2] [Nov 19 16:29:24:991] Syntax Error in Section: Actions (Command in line 40 origin: \\OPSISERVER\opsi_workbench\jdownload\CLIENT_DATA\setup32.opsiscript line: 41): copy -> undefined
Re: Verzeichnis kopieren
dies ist der momentane Inhalt des setup-scripts:
[Actions]
requiredWinstVersion >= "4.11.4.6"
ScriptErrorMessages=off
DefVar $MsiId$
DefVar $UninstallProgram$
DefVar $LogDir$
DefVar $ProductId$
DefVar $MinimumSpace$
DefVar $InstallDir$
DefVar $ExitCode$
DefVar $LicenseRequired$
DefVar $LicenseKey$
DefVar $LicensePool$
DefVar $displayName32$
DefVar $displayName64$
DefStringlist $msilist$
Set $LogDir$ = "%opsiLogDir%"
; ----------------------------------------------------------------
; - Please edit the following values -
; ----------------------------------------------------------------
;$ProductId$ should be the name of the product in opsi
; therefore please: only lower letters, no umlauts,
; no white space use '-' as a seperator
Set $ProductId$ = "jdownload"
Set $MinimumSpace$ = "250 MB"
; the path were we find the product after the installation
Set $InstallDir$ = "%SystemDrive%"
Set $LicenseRequired$ = "false"
Set $LicensePool$ = "p_" + $ProductId$
; ----------------------------------------------------------------
[Files_copy]
copy "%ScriptPath%\JDownloader\*.*" "$InstallDir$"
[Actions]
requiredWinstVersion >= "4.11.4.6"
ScriptErrorMessages=off
DefVar $MsiId$
DefVar $UninstallProgram$
DefVar $LogDir$
DefVar $ProductId$
DefVar $MinimumSpace$
DefVar $InstallDir$
DefVar $ExitCode$
DefVar $LicenseRequired$
DefVar $LicenseKey$
DefVar $LicensePool$
DefVar $displayName32$
DefVar $displayName64$
DefStringlist $msilist$
Set $LogDir$ = "%opsiLogDir%"
; ----------------------------------------------------------------
; - Please edit the following values -
; ----------------------------------------------------------------
;$ProductId$ should be the name of the product in opsi
; therefore please: only lower letters, no umlauts,
; no white space use '-' as a seperator
Set $ProductId$ = "jdownload"
Set $MinimumSpace$ = "250 MB"
; the path were we find the product after the installation
Set $InstallDir$ = "%SystemDrive%"
Set $LicenseRequired$ = "false"
Set $LicensePool$ = "p_" + $ProductId$
; ----------------------------------------------------------------
[Files_copy]
copy "%ScriptPath%\JDownloader\*.*" "$InstallDir$"
Re: Verzeichnis kopieren
Vermutung:
Ubuntu ist case sensitive, d.h. wenn die Groß- / Kleinschreibung bei den Pfaden nicht exakt passt, geht es nicht ...
Ubuntu ist case sensitive, d.h. wenn die Groß- / Kleinschreibung bei den Pfaden nicht exakt passt, geht es nicht ...
Re: Verzeichnis kopieren
Frage 1: Was sagt das Log? Welche Fehlermeldung kommt dort?heinzer hat geschrieben:
[Actions]
DefVar $InstallDir$
Set $InstallDir$ = "%SystemDrive%"
[Files_copy]
copy "%ScriptPath%\JDownloader\*.*" "$InstallDir$"
Frage 2: Wo liegen die zu kopieren Ordner / Dateien? Die sollen wirklich nach C:\? Somit sollte es rein Theo ein Ordner (ohne "parallel" liegenden Dateien) sein, oder?
Vorschläge:
-> Log
-> copy -s statt "nur" copy
-> Alle Variablen hardcoded ersetzen und dann das Log kontrollieren
Nach mehrmaligen Durchlesen, noch eine kleine Frage:
Willst Du den Ordner "JDownloader" kopieren oder einen "JDownloader\DAS_ist_der_zu_kopierende_Ordner\Dateien_da_drinnen.irgendwas"?
Re: Verzeichnis kopieren
Hi,
nachdem ich das Script so verändert hab, tut sich was, nur dass es den Ordner nach "C:\Program Files (x86)\opsi.org\opsi-client-agent\opsi-winst" kopiert....und zwar übrigens den Inhalt, nicht den Ordner selbst...
Es sieht so aus im Moment:
[Actions]
requiredWinstVersion >= "4.11.4.6"
ScriptErrorMessages=off
DefVar $MsiId$
DefVar $UninstallProgram$
DefVar $LogDir$
DefVar $ProductId$
DefVar $MinimumSpace$
DefVar $InstallDir$
DefVar $ExitCode$
DefVar $LicenseRequired$
DefVar $LicenseKey$
DefVar $LicensePool$
DefVar $displayName32$
DefVar $displayName64$
DefStringlist $msilist$
Set $LogDir$ = "%opsiLogDir%"
; ----------------------------------------------------------------
; - Please edit the following values -
; ----------------------------------------------------------------
;$ProductId$ should be the name of the product in opsi
; therefore please: only lower letters, no umlauts,
; no white space use '-' as a seperator
Set $ProductId$ = "jdownload"
Set $MinimumSpace$ = "250 MB"
; the path were we find the product after the installation
Set $InstallDir$ = "%SystemDrive%"
Set $LicenseRequired$ = "false"
Set $LicensePool$ = "p_" + $ProductId$
; ----------------------------------------------------------------
Files_install_32
[Files_install_32]
; Example of recursively copying some files into the installation directory:
;
copy -s "%ScriptPath%\JDownloader\*.*" "$InstallDir$"
Was ich möchte ist, den Ordner samt Inhalt nach C:\Users\Public\Downloads zu kopieren....
Von mir aus kann der zu kopierende Ordner auch in einer Freigabe sein, etwa "\\192.168.0.200\opsi_workbench\jdownload\CLIENT_DATA\JDownloader"
Vielen Dank und Grüße
Stefan
nachdem ich das Script so verändert hab, tut sich was, nur dass es den Ordner nach "C:\Program Files (x86)\opsi.org\opsi-client-agent\opsi-winst" kopiert....und zwar übrigens den Inhalt, nicht den Ordner selbst...
Es sieht so aus im Moment:
[Actions]
requiredWinstVersion >= "4.11.4.6"
ScriptErrorMessages=off
DefVar $MsiId$
DefVar $UninstallProgram$
DefVar $LogDir$
DefVar $ProductId$
DefVar $MinimumSpace$
DefVar $InstallDir$
DefVar $ExitCode$
DefVar $LicenseRequired$
DefVar $LicenseKey$
DefVar $LicensePool$
DefVar $displayName32$
DefVar $displayName64$
DefStringlist $msilist$
Set $LogDir$ = "%opsiLogDir%"
; ----------------------------------------------------------------
; - Please edit the following values -
; ----------------------------------------------------------------
;$ProductId$ should be the name of the product in opsi
; therefore please: only lower letters, no umlauts,
; no white space use '-' as a seperator
Set $ProductId$ = "jdownload"
Set $MinimumSpace$ = "250 MB"
; the path were we find the product after the installation
Set $InstallDir$ = "%SystemDrive%"
Set $LicenseRequired$ = "false"
Set $LicensePool$ = "p_" + $ProductId$
; ----------------------------------------------------------------
Files_install_32
[Files_install_32]
; Example of recursively copying some files into the installation directory:
;
copy -s "%ScriptPath%\JDownloader\*.*" "$InstallDir$"
Was ich möchte ist, den Ordner samt Inhalt nach C:\Users\Public\Downloads zu kopieren....
Von mir aus kann der zu kopierende Ordner auch in einer Freigabe sein, etwa "\\192.168.0.200\opsi_workbench\jdownload\CLIENT_DATA\JDownloader"
Vielen Dank und Grüße
Stefan
Re: Verzeichnis kopieren
Wenn du *.* nutzt, werden nur alle Dateien im Quellverzeichnis kopiert. Den Zielordner musst du dann manuell genauso nennen, wie den Quellordner.
Das sieht bei mir z.B. so aus.
Das sieht bei mir z.B. so aus.
Code: Alles auswählen
Set $CopyQuelle_Firefox$ = "%ScriptPath%\Firefox\*.*"
Set $TempVerzeichnis_Firefox$ = "%SystemDrive%\tmp\Firefox"
Files_copy_temp_Firefox
[Files_copy_temp_Firefox]
copy -s $CopyQuelle_Firefox$ $TempVerzeichnis_Firefox$
Re: Verzeichnis kopieren
so klappts jetzt:
Files_copy
[Files_copy]
copy -s "%ScriptPath%\JDownloader\*.*" "$InstallDir$\jdownloader"
vielen dank
Files_copy
[Files_copy]
copy -s "%ScriptPath%\JDownloader\*.*" "$InstallDir$\jdownloader"
vielen dank
Re: Verzeichnis kopieren
wenn ich es aber als opsi-paket starte , passiert wieder nichts....also in der "Winst-Konsole" funktionert es, aber wenn ich es dann mit opsi-makeproductfile und opsi-package-manager -i installiere und per configed verteile, dann passiert nix...