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
  • grep auf Dateien und eine Zeile vorher und nachher anzeigen lassen mit “-context“
    Get-ChildItem -Filter *1112.trc -Recurse | Select-String -Pattern " nttcni: connected on" -context 2
  • 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 

    siehe auch Wohin nur mit den Passwörtern in Windows und Linux Skripten? - Passwörter in Skripten verschlüsselt hinterlegen. und Datenbank User Passwörter in Shell und SQL Skripten

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


Umleitung verstehen:


Powershell Development Enviroments

Weitere Quellen:

Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Außerdem bestätigen Sie, dass Sie unsere Datenschutzbestimmungen gelesen und verstanden haben. Wenn Sie nicht einverstanden sind, verlassen Sie die Website.Weitere Information
windows/powershell_quick_start.txt · Zuletzt geändert: 2022/07/27 15:33 von gpipperr