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

Suche jemanden der mir in Powershell helfen kann !!!

Mitglied: PowershellAnfaenger1990

PowershellAnfaenger1990 (Level 1) - Jetzt verbinden

30.09.2014, aktualisiert 18:37 Uhr, 1454 Aufrufe, 10 Kommentare, 4 Danke

Hallo,

seit gestern bin auf Probearbeiten für eine Ausbildungsstelle, allerdings habe ich keinerlei vertiefte Erfahrung in Programmieren.

Nun wurde mir aber folgende Aufgabe gestellt :

Nachdem ich via Powershell eine Liste aller installierten Programme und deren Versionen in eine TXT-Datei speichen sollte ( welches ich noch hinbekommen habe) soll ich nun folgendes Szenario lösen :


Ich sollte mir ein Programm aus der Liste aussuchen und so tun als ob ich dieses Programm aus der Liste installieren will.

Nun soll geprüft werden ob wenn das Programm schon installiert ist, die Version veraltet oder noch auf dem neuesten Stand ist und dementsprechend eine Meldung ausgeben.

Das Programm das ich installieren will soll dann mit der registry oder so verglichen werden.


Falls mir jemand schnellstmöglich helfen kann würde ich es sehr nett finden !


Mit freundlichen Grüßen

Dominik


Mitglied: aqui
30.09.2014, aktualisiert um 18:36 Uhr
Falsche Rubrik, denn das wäre hier doch eher was für den Bereich Batch & Shell, oder ??

Kannst du übrigens selber verschieben wenn du beim Thread auf "Bearbeiten" klickst !

P.S.: Ob du dann mit Forenhilfe immer so weiterarbeiten willst musst du für dich selber entscheiden... ?!
Bitte warten ..
Mitglied: colinardo
30.09.2014, aktualisiert um 18:47 Uhr
Probearbeiten für eine Ausbildungsstelle
dann solltest du dich fragen ob die Stelle überhaupt was für dich ist. Die Firmen machen die Tests ja nicht umsonst um zu Prüfen ob der Kandidat für die Stelle bzw. für die anstehenden Arbeiten geeignet ist!

Wir würden dem Arbeitgeber damit keinen Gefallen tun...

Grüße @colinardo

p.s. mit fremden Federn schmückt man sich besser nicht.
Bitte warten ..
Mitglied: templier
30.09.2014, aktualisiert um 19:04 Uhr

Wir würden dem Arbeitgeber damit keinen Gefallen tun...

Grüße @colinardo

p.s. mit fremden Federn schmückt man sich besser nicht.
Absolut korrekt. Oder hast Du dem AG etwas verschwiegen beim Vorstellungsgespräch?

Wenn nicht, würde ich nach einer Schulung in diesem Bereich fragen. Danach kann er Dich mit solchen Dingen konfrontieren.

Mir tönt das eher so, das Du beim Vorstellungsgespräch mehr angegeben hast, als das Du wirklich kannst. Und wir sollen jetzt dabei Helfen Deine Inkompetenz weiter zu verschleiern.

Das Unterstütze ich nicht.

Viel Glück,

Lügen rächen sich immer im Leben.
Bitte warten ..
Mitglied: Xaero1982
30.09.2014 um 19:26 Uhr
Jungs, eure Meinung in allen Ehren, aber hier geht es um eine AUSBILDUNGSStelle.

Warum der das will bei einer Ausbildung ist mir nicht klar. Die Frage die sich mir stellt ist eher: Willst du dort wirklich eine Ausbildung machen? Wer solche vertieften Aufgaben stellt sucht billige Arbeitskräfte und niemanden den er ausbilden kann.

Solche Sachen lernt man ggf. in der Ausbildung und nicht vorher.

Natürlich werden einem evtl. auch fachspezifische Fragen gestellt, aber Programmieraufgaben gehören in der Regel wohl nicht dazu.

Was ist das bitte für eine Stelle?

Die Aufgabe ist nicht mal so eben so runterzuschreiben in meinen Augen.

Gruß
Bitte warten ..
Mitglied: Friemler
30.09.2014, aktualisiert um 21:00 Uhr
Hi @ All,

wie Xaero schon richtig erkannt hat: Erst mal richtig lesen und dann aufregen. Allerdings bin ich der Meinung, dass die Aufgabe zwar schon eine kleine Herausforderung darstellt, aber für jemanden, der (wahrscheinlich) Fachinformatiker Anwendungsentwicklung werden möchte, die Latte nicht zu hoch gelegt wurde. Ich denke, hier soll der "Proband" vor allem auf seine Fähigkeit geprüft werden, sich in ein unbekanntes Themengebiet einzuarbeiten - Alltag für Entwickler.


@ Dominik
Zitat von PowershellAnfaenger1990:

Nun soll geprüft werden ob wenn das Programm schon installiert ist, die Version veraltet oder noch auf dem neuesten Stand ist
und dementsprechend eine Meldung ausgeben.

Das Programm das ich installieren will soll dann mit der registry oder so verglichen werden.
Die Aufgabenbeschreibung klingt erstmal heftig. Die Komplexität einer Aufgabe lässt sich aber immer durch Zerlegung in kleinere Arbeitspakete reduzieren (das ist ggf. mehrfach zu wiederholen). Ich habe oben die Päckchen mal fett hervorgehoben. Daraus ergibt sich:

  1. Herausfinden, wie man an die Liste aller auf dem Rechner installierten Programme (incl. Versionsinfomation) kommt und darin ein bestimmtes Programm findet.
  2. Herausfinden, wie man aus einer EXE-Datei (dem Installer des Programms) die dort enthaltenen Versionsinformationen ausließt.
  3. Herausfinden, wie man die beiden Versionsinfos vergleichen kann (Zerlegen in Haupt- und Nebenversionsnummer).
  4. Herausfinden, wie man die Meldung ausgeben kann (sollte nicht schwer bzw. schon bekannt sein).

Außerdem hast Du noch einen Tipp bekommen (die letzte Hervorhebung): Die für Punkt 1. benötigte Information findet sich in der Registry.

Wenn man Google mit den richtigen Stichworten füttert, finden sich bestimmt schnell einige PowerShell-Schnipsel, die man dann "nur" noch richtig miteinander kombinieren muss, um zur Komplettlösung zu kommen. Hier fängt dann auch der eigentliche Lerneffekt an: Schnipsel per Google zu finden ist keine Kunst, sie zu verstehen, für die eigenen Zwecke anzupassen und zum Schluss integrieren zu können schon.

Gruß
Friemler
Bitte warten ..
Mitglied: PowershellAnfaenger1990
30.09.2014 um 21:56 Uhr
Nach langem suchen der " Schipsel " habe ich etwas zusammenbauen können und bei mir läuft es ( keine ahnung wie ich das hinbekommen habe )

Bin ich den Anforderungen bzw. der Aufgabe gerecht geworden ?

$ProgramName = "TeamSpeak 3 Client"
$ProgramVersion = "3.0"
$Programs = @()

$Programs += Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\* | select-object -Property DisplayName, Publisher, DisplayVersion


$Programs += Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\Currentversion\Uninstall\* | select-object -Property DisplayName, Publisher, DisplayVersion


If ($matchprogram = $Programs | Where-Object -FilterScript {$_.DisplayName -eq $ProgramName } )
{

If ([version]($matchprogram.DisplayVersion) -ge [version]$ProgramVersion)
{

Write-Host -Object "The installed $ProgramName is already up to date"
}
else
{
Write-Host -Object "Time to update $ProgramName "
#installion code
}
}


else
{
Write-Host -Object "$Program will be installed "
#installation code
}
Bitte warten ..
Mitglied: Friemler
30.09.2014, aktualisiert um 22:26 Uhr
Hallo Dominik,

das sieht gut aus. Und da haben andere schon länger gesucht und zusammengebastelt.

Wenn die 1990 in Deinem Nickname eine Bedeutung hat, bist Du 14. Ich denke mal, Softwareentwickler zu werden wäre durchaus eine Option für Dich.

Viel Glück
Friemler


[EDIT]

Allerdings solltest Du die Versionsnummer noch aus der EXE des Installers auslesen, nur dann ist das Script wirklich elegant.

[/EDIT]
Bitte warten ..
Mitglied: PowershellAnfaenger1990
30.09.2014 um 22:30 Uhr
1990 - ich bin 23 :D allerdings noch nie mit Programmieren selber zu tun gehabt aber habe ein Praktikum gemacht und fande es ziemlich interessant.

Was genau meinst du mit Versionsnummer der " EXE des Installers " habe ja eigtl keinen Installer oder wie ist das gemeint ?
Bitte warten ..
Mitglied: Friemler
30.09.2014, aktualisiert um 22:54 Uhr
1990 und 14, oh Mann! Tja, es ist schon spät...

In EXE-Dateien ist eine Versionsinformation integriert, die man auslesen und mit der Versionsnummer des bereits installierten Programms vergleichen kann. Google ist Dein Freund.

Gruß
Friemler
Bitte warten ..
Mitglied: AnkhMorpork
01.10.2014, aktualisiert um 08:02 Uhr
Hallo,

hier mal ein paar (für mich) nützliche Links. Nicht erschrecken - sind ne Menge - aber vielleicht ist was für dich dabei.

http://www.admin-source.de/BlogDeu/links 
 
Technet-Forum: 
http://social.technet.microsoft.com/Forums/de-DE/powershell_de/threads?page=1 
 
Hey scripting guy: 
http://blogs.technet.com/b/heyscriptingguy/?Redirected=true 
 
Script-Center: 
http://gallery.technet.microsoft.com/ScriptCenter/ 
 
Technet, What Can I Do With Windows PowerShell? 
http://technet.microsoft.com/en-us/library/ee332526.aspx 
 
Technet, Windows PowerShell Management Cmdlets: 
http://technet.microsoft.com/de-de/library/hh849827.aspx 
 
Technet, Windows PowerShell Tip of the Week: 
http://technet.microsoft.com/en-us/library/ff730948.aspx 
 
Technet, Windows PowerShell Tips: 
http://technet.microsoft.com/en-us/library/ee692948.aspx 
 
System.Windows.Forms Namespace: 
http://msdn.microsoft.com/en-us/library/system.windows.forms%28VS.80%29.aspx 
 
Dictionary-Object 
http://technet.microsoft.com/en-us/library/ee198718.aspx 
 
Tutorial: 
http://www.computerperformance.co.uk/powershell/ 
 
Cmtlets: 
http://www.colorconsole.de/PS_Windows/en/ 
 
WMI: 
http://social.msdn.microsoft.com/Search/de-DE?query=wmi&emptyWatermark=true&ac=4 
 
Win32 Classes: 
http://msdn.microsoft.com/en-us/library/aa394084%28v=vs.85%29.aspx 
 
Tutorials: 
http://www.powershellpro.com/powershell-tutorial-introduction/powershell-providers/ 
 
 
GUI-Programmierung: 
http://www.martinlehmann.de/wp/download/powershell-gui-programmierung-fur-dummies-step-by-step/ 
 
http://powershell.com/cs/ 
 
 
String-Manipulation: 
http://www.amandhally.net/tag/string-manipulation-in-powershell/ 
http://www.amandhally.net/tag/text-manipulation-in-powershell/ 
https://blogs.technet.com/b/heyscriptingguy/archive/2011/09/21/two-simple-powershell-methods-to-remove-the-last-letter-of-a-string.aspx?Redirected=true 
http://newdelhipowershellusergroup.blogspot.de/p/tutorial-series.html 
 
 
Remote: 
http://technet.microsoft.com/en-us/library/dd819505.aspx 
http://www.computerperformance.co.uk/powershell/powershell_remote.htm 
 
 
Das CMDlet Set-Service kann auch zum Starten & Stoppen von Diensten verwendet werden, es unterstützt den Parameter "-ComputerName" und zum Starten & Stoppen können wir den Parameter "-Status" verwenden. 
Set-Service -Name W32Time -ComputerName pc01 -Status Running 
Der Parameter "-Status" kennt übrigens folgende Modi: 
    Running 
    Stopped 
    Paused 
Quelle: http://www.newcotec.com/blog/entry/dienste-remote-via-powershell-starten 
 
 
Neues in PS 3.0 und 4.0: 
http://technet.microsoft.com/en-us/library/hh857339

Gruß

ankh
Bitte warten ..
Ähnliche Inhalte
Virtualisierung

VirtualBox VM nach Update nicht mehr zugreifbar - kann jemand helfen?

gelöst Frage von Maxxx01Virtualisierung7 Kommentare

Hallo, ich habe Virtualbox auf WIN 7 laufen und darin als virtuelle Maschine Lubuntu. VB hat mir ein Update ...

Batch & Shell

Powershell - nach Windows Updates suchen

gelöst Frage von AnkhMorporkBatch & Shell2 Kommentare

Hallo Leute, es ist trivial, aber ich finde es hier auf die Schnelle nicht und bei Tante Goo auch ...

Batch & Shell

Powershell: Suchen und dynamisch erweitern

gelöst Frage von rkrausbyBatch & Shell2 Kommentare

Hallo zusammen. Ich möchte in einer vorhandenen HTML-Datei in einer HTML-Tabelle die IP-Adressen in einen Link umwandeln. Die Zeilen ...

Batch & Shell

Powershell - In Textdatei suchen und ersetzen

gelöst Frage von Raaja89Batch & Shell5 Kommentare

Hallo Zusammen, ich habe einen Textdatei mit vielen aufeinander folgendenden Leerzeichen und wo an diversen Stellen Überschriften stehen. Ungefähr ...

Neue Wissensbeiträge
Server-Hardware
HP iLO ist gefährdet (iLO 4))
Tipp von AlFalcone vor 12 StundenServer-Hardware3 Kommentare

Gemäss Twitter und Heise gibt es eine Angriffsmöglichkeit auf iLO Quelle: iLO ist gefährdet

CMS
Erneut kritische Zero-Day-Lücke in Drupal
Tipp von Reini82 vor 21 StundenCMS

Laut einem Bericht auf t3n gibt es eine Schwere Sicherheitslücke in Drupal die auch schon ausgenutzt wird. Betroffen sind ...

Sicherheit

MikroTik-Router patchen, Schwachstelle wird ausgenutzt

Information von kgborn vor 1 TagSicherheit

Am 23. April 2018 wurde von Mikrotik ein Security Advisory herausgegeben, welches auf eine Schwachstelle im RouterOS hinwies. Mikrotik ...

Windows 10

Microcode-Updates KB4090007, KB4091663, KB4091664, KB4091666 für Windows 10

Information von kgborn vor 2 TagenWindows 101 Kommentar

Kurze Information für Administratoren von Windows 10-Systemen, die mit neueren Intel CPUs laufen. Microsoft hat zum 23. April 2018 ...

Heiß diskutierte Inhalte
Ausbildung
Wie gelingt ein guter Einstieg in die FiSi-Ausbildung? (Umschulung)
Frage von SiAnKoAusbildung30 Kommentare

Schönen guten Tag, ich bin SiAnKo und habe seit dem 1.04.2018 eine Umschulung als FiSi angefangen. Ich möchte natürlich ...

Windows Server
Alten DC entfernen
gelöst Frage von smartinoWindows Server27 Kommentare

Hallo zusammen, ich habe hier eine Umgebung übernommen und erstmal einen DCDIAG gemacht. Dabei fällt auf, daß eine ganze ...

Batch & Shell
OU an eine Variable übergeben
gelöst Frage von oesi1989Batch & Shell22 Kommentare

Hallo, ich würde gerne alle OUs an eine Variable übergeben und danach einen Teil per .remove entfernen. Das Anzeigen ...

Router & Routing
Subnetzmaske vergrößern
gelöst Frage von groovesurferRouter & Routing20 Kommentare

Hallo, hat jemand schonmal getestet was passiert, wenn man die Subnetzmaske bei laufendem Betrieb (wenn user im Netzwerk verbunden ...