Benutzer-Werkzeuge

Webseiten-Werkzeuge


windows:powershell_quick_start

Die Windows PowerShell

 München Olympia Stadion Oktober 2015

Überblick:

Nun (08.2016) auch für die Linux Plattform

Objekt Referenzen:

Für das Erstellen von PowerShell Skripten ist das Wissen über den Aufbau der .Net Klasse sehr vorteilhaft.


Sammlung wichtiger PowerShell Tipps und Tricks

Mein OpenSource Projekt OraPowerShell

Ein komplettes Beispiel für einen Umsetzung von Scripten im Oracle Umfeld mit der Microsoft PowerShell befindet sich unter:
OraPowerShell auf CodePlex .


Kleine Tricks am Rande:

  • Zeige die 25 größen Dateien
    gci . -r | sort Length -desc | select fullname Length -f 25
  • Version abfragen mit „$PSVersionTable und $PSVersionTable.PSVersion
  • Oracle Home setzen mit „new-item -path env: -name ORACLE_HOME -value D:\oracle\product\11.2.0.3\client_64bit“ (entspricht dem dos set Befehl)
  • NLS_LANG ändern mit
    set-item -path env:NLS_LANG -value AMERICAN_AMERICA.UTF8
  • Oracle Home abfragen / als Variable verwenden mit „$ENV:ORACLE_HOME
  • Größe der Konsole einstellen mit „MODE con:cols=130 lines=35“( CMD Feature .-))
  • Dateien in einer Verzeichnis Struktur umbenennen (zum ersten Testen den Schalter -WhatIf verwenden!)
    Get-ChildItem -Filter *testuser* -Recurse | Where-Object {!$_.PSIsContainer} |  Rename-Item -NewName { $_.Name.Replace('testuser','gpipperr') } 
  • Dateien löschen
    Get-ChildItem -Filter *TESTER* -Recurse | Where-Object {!$_.PSIsContainer} | Remove-Item 
  • Subversion .svn löschen
    Get-ChildItem -Filter .svn -Recurse -force | Where-Object {$_.PSIsContainer} | Remove-Item -force -recurse
  • Das @ beim Aufruf von SQL*Plus Scripten immer mit @<scriptname> schützen
     sqlplus / as sysdba "@login.sql"
  • grep über alle Dateien in Unterverzeichnissen
    Get-ChildItem -Filter *java -Recurse  | Select-String -Pattern "CHECKPOINTER_BYTES_INTERVAL"
    #alternativ
    Get-ChildItem -recurse | Select-String -pattern "isched" | group path | select name
  • Zähle die Zeichen in einer Datei (linux : cat | wc -l ) ⇒
     gc .\export_datei.csv | measure -l 
  • Tail auf eine Datei
    Get-Content -Path "catupgrd0.log" -Tail 30 -Wait
  • Laufzeit eines Programms messen mit Measure-Command
    Measure-Command { expdp "'/ as sysdba'" FULL=YES  DIRECTORY=WORK_EXPOR DUMPFILE=full_expdp.dmp }
  • Credential Object für das Speicher der Passwörter im Script verwenden
    # PWD
    $db_user     = "system"
    $oracle_credential = "$scriptpath\ORACLE_CREDENTIAL.xml"
     
    #
    # To store the password we use  the PSCredential object
    # if the serialized object of the password not exists
    # prompt the user to enter the password
    #
     
    if (!(test-path -path $oracle_credential)) {
    	$user_credential=GET-CREDENTIAL -credential "$db_user"  
    	export-clixml -InputObject $user_credential -Path $oracle_credential
    }
    else {
       $user_credential=Import-Clixml -Path $oracle_credential
    }
     
    #get the clear type password
     
    $db_password=$user_credential.GetNetworkCredential().Password 

Reguläre Ausdrücke in der Powershell, Regex Ausdrücke:



Powershell Development Enviroments

Weitere Quellen:

Cookies helfen bei der Bereitstellung von Inhalten. Durch die Nutzung dieser Seiten erklären Sie sich damit einverstanden, dass Cookies auf Ihrem Rechner gespeichert werden. Weitere Information
"Autor: Gunther Pipperr"
windows/powershell_quick_start.txt · Zuletzt geändert: 2019/04/14 10:45 von Gunther Pippèrr