Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

vbs scripting um Daten zu kopieren

Frage Entwicklung VB for Applications

Mitglied: RainerZufall

RainerZufall (Level 1) - Jetzt verbinden

16.12.2005, aktualisiert 18.12.2005, 24739 Aufrufe, 11 Kommentare

hiho,

da ich ein "Scriptn00b" bin habe ich mal eine Frage an die Community.
Ich benötige ein .vbs Skript welches folgendes für mich erledigt.

Es soll in einen bestimmten Pfad schauen ob ein Ordner vorhanden ist:
"c:\Programme\Test" wenn der Ordner nicht dort liegt, soll er Ihn von einer Freigabe im Netz kopieren "\\Server\Freigabe\Test"
anschliessend einfach noch einmal überprüfen und wenn der Ordner (+Inhalt) dort nun liegt das Skript einfach beenden.

Für einen Scripter sicher kein Thema, aber ich wurschtel da schon seit Tagen dran rum.

Ein grosses Danke vorweg!

Gruss
RZ
Mitglied: 21258
16.12.2005 um 20:25 Uhr
muss es vbs sein?
Bitte warten ..
Mitglied: RainerZufall
16.12.2005 um 21:07 Uhr
hmm... muss nicht unbedingt, dachte nur es wäre schöner ;)
Bitte warten ..
Mitglied: RainerZufall
17.12.2005 um 00:25 Uhr
ok habs selber hinbekommen, für alle die auch das Problem haben.

_________________

Set objFSO = CreateObject("Scripting.FileSystemObject")

If objFSO.FolderExists("C:\Folder") Then
Set objFolder = objFSO.GetFolder("C:\Folder")
Else
Wscript.Echo "Ordner nicht da, er wird kopiert."

Const OverWriteFiles = TRUE

Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.CopyFolder "\\192.168.255.1\Folder" , "C:\Folder" , OverWriteFiles

End If
_____________________


so einfach ist es, wenn man nur weiss wie

in diesem Sinne,
schönen Tag noch
Bitte warten ..
Mitglied: gemini
17.12.2005 um 01:18 Uhr
Hallo Rainer,

Glückwunsch, das sieht ja schon gut aus
Und selbstgemachtes erfüllt einen doch auch mit Stolz.

Eine kleine, wie ich hoffe konstruktive, Manöverkritik:
Den zweiten Set objFSO-String kannst du dir sparen, das FileSystemObject wurde 9 Zeilen vorher bereits erstellt. Doppelt genäht hält hier nicht besser

Nachdem FolderExists in Zeile 3 bereits FALSE zurückgegeben hat ist es eigentlich nicht nötig den Ordner mit OverWriteFiles zu kopieren

Ein paar Tipps und Empfehlungen:
Option Explicit in der ersten Zeile erzwingt Variablendeklaration. Dadurch wird das Script zwar umfangreicher, es schützt aber vor Fehlern durch falsch geschriebene Variablen, bspw. obiFSO statt objFSO. Nach solchen Fehlern kann man durchaus geraume Zeit suchen.

Werte, die sich ändern können weist man am besten Variablen zu. Bsp. wenn sich C:\Folder in deinem Script mal nach c:\Ordner ändert, musst du das an 3 Stellen in deinem Script nachführen. In umfangreicheren Scripten artet das leicht zu Arbeit aus.

Wertezuweisung an Variablen und Konstanten am Anfang des Scriptes schaffen Übersicht.

In etwa so:
~~~~~~~~~~~~~~~~~~~~~~
Option Explicit
Dim objFSO, objFolder, strSrcFld, strDstFld

strSrcFld = "\\192.168.255.1\Folder"
strDstFld = "C:\Folder"
Set objFSO = CreateObject("Scripting.FileSystemObject")

If objFSO.FolderExists(strDstFld) Then
   Set objFolder = objFSO.GetFolder(strDstFld)
Else
   WScript.Echo "Ordner nicht da, er wird kopiert."
   objFSO.CopyFolder strSrcFld, strDstFld
End If
~~~~~~~~~~~~~~~~~~~~~~

Falls du dich intensiver mit Scripting beschäftigen darfst | musst | willst, kannst du im <a href="http://www.microsoft.com/technet/scriptcenter/default.mspx" target="_new">Script Center</a> jede Menge Infos bekommen.
Mind. ebenso interessant ist die Seite von Guy Thomas http://www.computerperformance.co.uk/

Gruß
gemini
Bitte warten ..
Mitglied: Biber
17.12.2005 um 01:41 Uhr
@gemini
... und das mit dem "Set objFSO = Nothing" am Ende erzählst Du ihm nicht? Ich finde, das sollte man/frau sich so früh wie möglich angewöhnen...

@RainerZufall
Das eben scherzhaft geschriebene gehört IMHO wirklich zum A & O auch der objekt-orientierten Programmierung - wenn irgendwo Objekte "erzeugt" werden wie oben im Beispiel mit CreateObject(...), dann müssen/sollten die auch vom dafür verantwortlichen wieder "zerstört" werden.
Denn die Annahme, dass in einer Multiprocessing/Multi-Thread-Welt nicht mehr benötigte Objekte irgendwann von einer höheren Instanz entfernt werden.. vergiss es.
Ich erinnere an gewisse Betriebssysteme, die sich den Hauptspeicher zumüllen mit nicht benötigten DLLs, beendeten Services und Prozessen, an fragmentierte Speicherblöcke usw. Von daher ein sinnvoller kleiner Beitrag zum Umweltschutz und zur Ressourcen-Einsparnis:
wenigstens alle Objekte (meist erkennbar daran, dass Du sie mit "Set objxxxx=..." einführst) nach Benutzung wieder mit "set objxxxx....= Nothing" entsorgen.

Grüße und auch viel Spaß weiterhin beim Skripten
Biber
Bitte warten ..
Mitglied: gemini
17.12.2005 um 09:03 Uhr
@Biber
Hast datürlich Recht, ich verspreche Besserung!!!
Über die Weihnachtsfeiertage hab ich ja Zeit, da werd ich dann alle Skripten Korrektur lesen
Bitte warten ..
Mitglied: RainerZufall
18.12.2005 um 02:35 Uhr
..*neid*..
ok ich sehe es gibt noch viel zu tun ... warten wir es ab zählt hier wohl nicht, wie ?
Aber danke für die Tipps, da Scripting für mich absolutes Neuland ist bin ich für Anregungen oder gar Tipps Dankbar ... es gibt ja auch zahlreiche Nachschlagewerke was Scripting angeht ... vielleicht habt ihr da ja auch noch was auf Lager *g*
Bitte warten ..
Mitglied: gemini
18.12.2005 um 12:38 Uhr
Sehr gute Infoquellen sind imho:
MS ScriptCenter http://www.microsoft.com/technet/scriptcenter/default.mspx
Guy Thomas' Seite http://www.computerperformance.co.uk/
Rob van der Woud's Scripting Pages http://www.robvanderwoude.com/index.html

Auf http://www.admini.de/index.htm findest du auch Infos und Beispielscripte, ist aber eher batchlastig (was keinesfalls negativ gemeint ist!).

Und auch noch ein Forum http://www.systemscript.com/forumde/

Es gibt sicher noch jede Menge anderer, evtl. auch besserer, Quellen.
Solche tun sich meist bei der Suche nach einer spezifischen Problemlösung auf.

An Literatur-Hardware find ich Windows Scripting von Holger Schwichtenberg ganz gut
http://www.amazon.de/exec/obidos/ASIN/3827321964/qid=1134905582/sr=8-4/ ...
Ob das allerdings geeignet ist, Spaß daran zu finden, weiß ich nicht.

Gruß
gemini
Bitte warten ..
Mitglied: Biber
18.12.2005 um 14:08 Uhr
Moin RainerZufall,

ergänzend zu dem, was gemini oben als erste Links gepostet hat:
Als ich das erste Mal den M$-Scriptcenter-Links gefolgt bin, fand ich es alles andere als Appetit machend - quietschbunte, marktschreierische Seiten geschrieben von Codern, die ihren Fachslang für normale Umgangssprache halten. Das war so mein erster Eindruck.

Wenn Du den ersten Ekel niederkämpfst und ein bisschen gutwillig nach links und rechts klickst, stolperst Du über richtig nützliche Utilities, bei denen mein absoluter Newbie-Favorit die so genannten "TechNet Script Center Sample Scripts" sind (unter diesem Begriff zu finden).

Dahinter verbirgt sich eine zum Download angebotene 1,5 MB kleine "script_center.chm", die ziemlich alle Beispiele von den M$-Skriptcenter-Seiten enthält...sauber in Kategorien unterteilt und mit einer Angabe, unter welchen M$-Betriebssystemen diese laufen könnten.
Sehr brauchbar (bis auf die Tatsache, dass M$ weder im Beispielcode noch im ausgelieferten Produktiv-Code jemals Tippfehler korrigiert).
Der Link zum Download <a href=http://www.microsoft.com/downloads/details.aspx?FamilyID=b4cb2678-dafb- ... target="blank">TechNet Script Center Sample Scripts (*.chm-Datei)</a>.

Bedauernswert bei diesem Skripting-Thema ist leider die "politische" Ausrichtung von M$... weitgehend wird suggeriert, dass Skripting VB-nah sein muss.. näher an VB oder .NET - der ursprünglich gleichwertige Ansatz mit JScript (*.js) wird extrem vernachlässigt. Das schlägt sich auch in Foren wie unserem nieder. Die meisten Skript-Beispiele hier sind als *.vbs und nur sehr wenige als *.js realisiert.

Grüße Biber
Bitte warten ..
Mitglied: RainerZufall
18.12.2005 um 14:56 Uhr
Danke für die hilfreichen Tipps, da werde ich doch mal wieder wirklich was zu lesen haben *g*
Habt ihr auch Erfahrungen mit Scripting Tools gesammael ?

Beispiel: PrimalScript

Die einem bei "typischen" Fehler aushelfen und das Verständniss fördern?
Oder macht ihr das noch like "oldSchool" Texteditor auf und los gehts.
Das würde mich noch interessieren,

Danke und schönes Wochenende noch.

RZ
Bitte warten ..
Mitglied: Biber
18.12.2005 um 15:18 Uhr
Ist sicherlich eine persönliche Geschmacksfrage - bei Batch und Skripting arbeite ich meistens wirklich mit Texteditoren und ohne IDE und Generatoren. Aber zumindest nicht mit den ganz albernen Praktikanten-Editoren wie NotePad oder ähnlichem Unsinn, sondern schon mit irgendetwas, was zumindest Syntax-Highlightning und Blöcke-Einrücken unterstützt ( z.B TextPad, UltraEdit, PFE).

Bei den Scripting-Tools (oder anderen IDE's)... es kommt immer darauf an, wie das Verhältnis von "nützlichen Ratschlägen" und "nervigen Hinweisen" ausgestaltet ist - mein absolutes Negativ-Beispiel für nervige Hinweise wären diese VBA-Editoren unter Access oder Excel - die halten mich in der Regel nur auf beim Tippen.

Kurzgefasst - es gibt vermutlich wie überall in unserer binären Welt nicht nur Nullen und Einsen, kein Entweder/Oder, sondern immer nur einen individuellen Königsweg irgendwo dazwischen. Jedes Tool, mit dem das Coden Spaß macht, ist ein Gutes. Aber nicht jedes, mit dem es mir Spaß macht, ist gut für alle et vice versa.

So, jetzt haben wir diesen Thread aber endgültig ganz aus der Bahn geworfen..

Frank / der Biber aus Bremen
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Bash scripting
gelöst Frage von HighShooterBatch & Shell3 Kommentare

Hallo, für meinem Server auf Debian 8 soll ich einen Script schreiben; der sollte folgendes beinhalten: eine Datei von ...

Netzwerkprotokolle
ISCSI LUN Daten kopieren
Frage von leon123Netzwerkprotokolle20 Kommentare

Hallo zusammen, ich habe hier ein Testlab mit 2 ESXi. Hier sind zwei ISCSI Luns angebunden die sich auf ...

Batch & Shell
Kopieren von Daten per bat
gelöst Frage von kayes73Batch & Shell9 Kommentare

Hallo zusammen, ich hoffe das meine Frage hier nicht schon hundertmal in verschiedensten Variationen gestellt wurde. Es geht um ...

Festplatten, SSD, Raid
Daten kopieren von teildefekter Festplatte
gelöst Frage von FreankhFestplatten, SSD, Raid17 Kommentare

Hi. Ich habe ein defektes Laufwerk,auf das noch zugegriffen werden kann. Ich habe 60 GB Daten zu verschieben/retten. Problem ...

Neue Wissensbeiträge
Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 35 MinutenSicherheit2 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Sicherheit

Meltdown und Spectre: Die machen uns alle was vor

Information von Frank vor 1 StundeSicherheit9 Kommentare

Aktuell sieht es in den Medien so aus, als hätten die Hersteller wie Intel, Microsoft und Co den aktuellen ...

Microsoft

Update KB4073578 für AMD CPU (Spectre und Meltdown Lücke)

Information von sabines vor 7 StundenMicrosoft

Wegen Problemen (BOSD, nicht startende PCs) wurde das Update KB4056897 und KB4056894 für AMD CPUs zurückgezogen. Dieses Update KB4073578 ...

Mac OS X

MacOS wo ist die Tilde ?

Tipp von Alchimedes vor 20 StundenMac OS X4 Kommentare

Hallo, ich hab eine MacOS qwertz Keyboard auf US Layout umgestellt da die Sonderzeichen besser erreichbar sind. Leider fehlt ...

Heiß diskutierte Inhalte
Batch & Shell
Anmeldevorgang für Informatikraum (Schule) unter Windows
gelöst Frage von IngenieursBatch & Shell27 Kommentare

Hey zusammen, ich werde in naher Zukunft den Informatik Raum meiner jetzigen Schule von dem aktuellen Betreiber übernehmen (Vertrag ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von 92943Windows 1025 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Netzwerkgrundlagen
Welches Modem für VDSL 50000 der T-Com
Frage von Windows10GegnerNetzwerkgrundlagen18 Kommentare

Hallo, ein Kollege von mir will sich VDSL50000 von der T-Com holen, um daran einen Server zu betreiben. Ich ...