none
Hashtable bei slqplus verwenden RRS feed

  • Frage

  • Hallo zusammen,

    ich komme gerade nicht wirklich weiter. Ich habe meine Passwörter in eine Hashtable gespeichert. Da es einige sind und ich sie gerne an andere Skripte weitergeben möchte, ohne immer den ganzen Rattenschwanz aufzuschreiben, fand ich die Idee ganz praktisch. Blöd nur dass bei folgendem Statement das Passwort nicht akzeptiert wird (ERROR: invalid user/password):

    [hashtable]$hashi = @{pw_user = "pw"}
    
    $sql = "select * from Db;"
    $sql | sqlplus -S user/$hashi.pw_user@DB
    
    #Stopfe ich den Hashtable-Eintrag vorher in einen String:
        [string]$pw=$pw_enc.admuser
    #funktioniert es.

    Nur möchte ich ungerne meine ganzen Passwörter zusätzlich immer in Strings verpacken. Dann kann ich mir die Hashtable auch sparen. Gibt es eine Möglichkeit, dieses Problem elegant zu lösen?

    Danke schonmal im Voraus!

    Mittwoch, 6. März 2013 08:04

Antworten

  • Du verlangst ein bisschen viel von der PowerShell Variablen Expansion und dem Parser!

    Woher soll denn der Parser wissen das user/$hashi.pw_user@DB als String zu expandieren ist? Der Parser erkennt es als Kommando weil jegliche Anführungszeichen fehlen!

    Ich weiß nicht was das @DB zu bedeuten hat aber so gehts:

    [hashtable]$hashi = @{pw_user = "pw"}
    
    "user/$($hashi.pw_user)@DB"

    Oder so:

    [hashtable]$hashi = @{pw_user = "pw"}
    
    "user/" + $hashi.pw_user + "@DB"

    Lies dir auch dazu mal diesen Artikel durch:
    http://www.admin-source.de/BlogDeu/433/powershell-9-arten-ein-externes-programm-executable-zu-starten


    Please click “Mark as Answer” if my post answers your question and click “Vote As Helpful” if my Post helps you.
    Bitte markiere hilfreiche Beiträge von mir als “Als Hilfreich bewerten” und Beiträge die deine Frage ganz oder teilweise beantwortet haben als “Als Antwort markieren”.
    My PowerShell Blog http://www.admin-source.info
    [string](0..21|%{[char][int]([int]("{0:d}" -f 0x28)+('755964655967-86965747271757624-8796158066061').substring(($_*2),2))})-replace' '
    German ? Come to German PowerShell Forum!

    • Bearbeitet Peter Kriegel Mittwoch, 6. März 2013 09:59
    • Als Antwort markiert NiuBee Mittwoch, 6. März 2013 10:15
    • Tag als Antwort aufgehoben NiuBee Freitag, 8. März 2013 10:06
    • Als Antwort markiert NiuBee Freitag, 8. März 2013 10:08
    Mittwoch, 6. März 2013 08:49