Jump to content

BOfH_666

Expert Member
  • Content Count

    451
  • Joined

  • Last visited

Community Reputation

40 Popular

1 Follower

About BOfH_666

  • Rank
    Expert Member

Recent Profile Visitors

905 profile views
  1. Für Copy-Jobs wird normalerweise robocopy empfohlen. Schau Dir das mal an, vielleicht brauchst Du ja kein Powershell. Falls das für Deine Zwecke nicht ausreicht, wirst Du Dir entweder was passendes im Internet suchen müssen, oder Dir selbst was bauen. Solltest Du schon Poweshell-Code haben, mit dem Du nur Probleme hast, kannst Du den hier posten und beschreiben, welche Probleme Du hast und wir werden versuchen, Dir zu helfen. Dann wären aber ein paar detailiertere Informationen hilfreich.
  2. Such doch mal in der PowershellGallery. Solche Fragen kommen komischerweise öfters und ich vermute, dass es da "schon was von Rationpharm" gibt. Wir setzen dafür SCCM ein - ich hab also keinerlei Erfahrung mit solchen Frickeleien.
  3. Hmmmm ... seit Powershell Version 3.0 gibt's für Get-ChildItem den Parameter -File!! Brauchen wir wirklich noch solche v2.0-Konstrukte?
  4. Das einfachste wär wohl Get-Random ( Get-ChildItem -Path 'Pfad zu den Dateien' ) | Move-Item ...
  5. Wenn Du Dir die Gruppen in ein Array packst, kannst Du mit einer Foreach-Schleife drüber iterieren. Wenn Du Select-Object -ExpandProperty benutzt, machst Du aus vielseitigen Objekten dumme Strings. In Deinem Code-Beispiel hast Du zwei AD-Abfragen, von welcher eine noch eine weitere geschachtelte und direkt gefilterte AD-Abfrage enthält. Ich hätte versucht, das eventuell zu vermeiden. Du könntest die Abfrage auch weiter "oben" absetzen und somit erstmal ALLE Daten für ALLE relevanten Gruppen und Anwender einsammeln. Dann brauchst Du nicht 34 mal das AD durchhühnern.
  6. Gute Idee. Würd ich genau so machen. Wenn ich das nicht falsch verstanden habe, solltest Du mit: $SearchBase = 'NA-Finanzen...' $AllUsersList = Get-ADUser -Filter * -SearchBase $SearchBase -Properties MemberOf, physicalDeliveryOfficeName, mail ... alles Nötige im Array $AllUsersList haben, was Du für Deine Prüfungen brauchst, oder? ... ich würde erwarten, dass das die Sache ewtas beschleunigen sollte. ($SearchBase musst Du natürlich entsprechend korrekt setzen)
  7. Schau Dir mal bitte das Microsoft Deployment Toolkit an. Es ist kostenlos und genau für solche Arbeiten gemacht. .... und für den generellen Einstieg in Powershell ist dieser kostenlose Video-Kurs sehr empfehlenswert: Getting Started wit Microsoft Powershell.
  8. Großartig. Ein bissl zu extensiv dokumentiert für meinen Geschmack, aber wenn es den Job erledigt - cool. Jeder, der auch nur ansatzweise English versteht, kann sich denken, dass ein Befehl wie Start-Service, einen Service startet - für alle Powersheller ist das sowieso logisch. Das muss also nicht dokumentiert werden und bläht den Code nur unnötig auf. Kommentare sind dort nützlich, wo sie etwas Nicht-Offensichtliches erklären.
  9. Sí Señor. ... doppelt hält besser ... erst hat er's / sie's offenbar eilig und jetzt reagiert er / sie nicht mal mehr ... schade ...
  10. Für Deinen 2. Schritt müsste der aktuelle Pfad auf das Oracle-Stamm-Verzeichnis eingestellt sein, damit es so funktioniert. Ich würde empfehlen, den absoluten Pfad zu benutzen ... also statt ".\app\oracle\*", eher "C:\Program Files\Oracle\Whatever\app\oracle\*". Was passiert denn, wenn Du den Befehl so ausführst, wie er ist?
  11. ... und es kann auch nicht schaden, sich die Grundlagen von Powershell einmal einigermaßen strukturiert draufzuschaffen ... es gibt zahlreiche Tutorials im Netz, gute Bücher oder (im Moment noch) den kostenlosen Video-Kurs in der Microsoft Virtual Academy - Getting Started with Powershell.
  12. ... dann wird's aber Zeit ... das ist mit Powershell meiner Meinung nach sogar sehr einfach. Ich gehe davon aus, dass Du ein Excel-Makro meinst. Ich würde vermuten, dass das auch funktioniert, glaube aber, dass das sogar etwas aufwändiger wäre als mit einem Powershell-Script. Als Start-Hilfe könntest Du Dir die cmdlets Get-ChildItem, Where-Object, Foreach-Object, Copy-Item und Move-Item anschauen. Wenn Du Dir jeweils die komplette Hilfe inklusive der Beispiele anschaust, hast Du fast schon alles, was Du brauchst ... und wenn Du stecken bleibst, kannst Du hier wieder fragen.
  13. Das liegt an der Deutschen Version von Excel. Die nimmt automatisch ein Semikolon. Der Text einer "Zelle" in CSV wird normalerweise auch in Anführungszeichen eingeschlossen und kann dann problemlos auch das Trennzeichen der CSV-Datei enthalten.
  14. Hallo DotCom86, CSV steht für Comma Seperated Value. Das Standard-Trennzeichen ist also das Komma. Wenn Du ein anderes Trennzeichen verwenden möchtest, was in Deutschland gern mal empfehlenswert sein kann, weil eine Deutsche Version von Excel dann besser damit umgehen kann, musst Du dem cmdlet Import-CSV oder Export-CSV das jeweils durch den parameter -Delimiter ';' mitteilen. Es ist emfehlenswert, gerade als Anfänger, sich die Hilfe der cmdlets die man benutzt oder benutzen möchte immer komplett und inklusive der Beispiele durchzulesen. Unabhängig davon, würde ich Dir die Lektüre "The Unofficial PowerShell Best Practices and Style Guide" empfehlen.
  15. .... und noch ein Hinweis: Wenn Du das cmdlet Export-Csv studiert hast und das ausprobierst und Excel beim Öffnen der CSV-Datei ein bissl zickig ist, weil es ein Deutsches Excel ist und nicht mit dem Komma als Delimiter klarkommt, nimmst Du einfach -Delimiter ';' .... dann klappt das auch noch.
×
×
  • Create New...