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
GELÖST

Powershell variablen inhalt in eine andere variable speichern

Frage Entwicklung Batch & Shell

Mitglied: micneu

micneu (Level 2) - Jetzt verbinden

24.03.2010, aktualisiert 11:25 Uhr, 9382 Aufrufe, 2 Kommentare

hallo leute,

ich erstelle gerade ein powershell script

hier möchte ich den inhalt einer variable in erine neuen variable speichern

mein script im rohbau
01.
# variablen deklarieren 
02.
$start = Get-Date 
03.
$ziel = "$env:windir\System32\drivers\etc\" 
04.
$endung = "hosts" 
05.
$LfdNr = 1 
06.
$zaehler = 1 
07.
##### ip suchen #### 
08.
$suchen1 = '192.168.2.6' 
09.
$suchen2 = "192.168.2.5" 
10.
##### ip ersetzen #### 
11.
$ersetzen1 = "192.168.3.6´tsrv" 
12.
$ersetzen2 = "192.168.3.5´tmat" 
13.
echo "hosts bearbeiten" 
14.
dir $ziel -filter $endung |  
15.
    ForEach-Object { 
16.
        #echo "Datei: $_" 
17.
        $text = Get-Content $_.fullName 
18.
        $wertersetzen = '$ersetzen' + $zaehler         
19.
        $wertsuchen = '$suchen' + $zaehler 
20.
        $IP = $text -match $wertsuchen 
21.
        $gleich = ($IP -match $wertsuchen)         
22.
        If ($gleich) { 
23.
            echo $gleich           
24.
            echo "ip ist gleich" 
25.
            $IP 
26.
            $text2 = $text -replace $IP,'$wertersetzen'            
27.
        } Else { 
28.
            echo $gleich 
29.
            echo "ip ist ungleich" 
30.
31.
        #$LfdNr++ 
32.
33.
$stop = Get-Date 
34.
$gelaufenezeit = ($stop - $start).TotalSeconds 
35.
echo "Auftrag nach $gelaufenezeit Sek. erledigt...."
ich möchte das zeile 19 den variablen wert von zeile 8 bekommt
dies will ich für eine for schleife einsetzen.
(noch nicht mit in den code gebaut.

gruß michael
Mitglied: micneu
26.03.2010 um 00:57 Uhr
hallo leute ich habe es soweit gelöst nur habe ich jetzt das problem das mir mein script den inhalt meiner variable alles in eine zeile schreibt.
hier mein code:

01.
#   ************************************************************** 
02.
#    einmal auf der powershell ausgeführt werden 
03.
#     "Set-ExecutionPolicy Unrestricted" 
04.
#   ************************************************************** 
05.
#    Get-Content "C:\Windows\System32\drivers\etc\hosts" | ForEach-Object { $_ -replace "192.168.51.*", "test" } | Set-Content test2.txt  
06.
#     
07.
#   ************************************************************** 
08.
#   * Erstellt M.N. - POWERSHELL / Entwicklung   24.03.2010       
09.
#   ************************************************************** 
10.
# variablen deklarieren 
11.
$start = Get-Date 
12.
$ziel = "C:\Windows\System32\drivers\etc" 
13.
#$ziel = "$env:windir\System32\drivers\etc\" 
14.
$endung = "hosts" 
15.
$LfdNr = 1 
16.
##### ziel der geänderten datei #### 
17.
$export = "C:\Windows\System32\drivers\etc\hosts3" 
18.
#$export = "$env:windir\System32\drivers\etc\hosts" 
19.
$zaehler = 1 
20.
##### ip suchen #### 
21.
#$suchen = '192.168.'#,'192.168.1.206','192.168.1.205' 
22.
$suchen = '(?i)192.168.51.*',"hans" 
23.
##### ip ersetzen #### 
24.
#$ersetzen = ' '#,"192.168.1.206 `t v01-w","192.168.1.4 `t ma" 
25.
$ersetzen = "192.168.1.5 `t pcname","wirst" 
26.
echo "hosts bearbeiten" 
27.
 
28.
Function checkArray { 
29.
    if ($suchen.length -ne $ersetzen.length){ 
30.
            echo "suchen, ersetzen array ungleich" 
31.
            break 
32.
            }Else {echo "such array ist ok"}      
33.
34.
 
35.
function hosts-replace { 
36.
    dir $ziel -filter $endung | 
37.
        ForEach-Object { 
38.
        #echo "Datei: $_" 
39.
        $text = Get-Content $_.fullName         
40.
         for ($x1=0; $x1 -lt $suchen.length; $x1++){ 
41.
            $ersetze = $ersetzen[$x1] 
42.
            $suche = $suchen[$x1] 
43.
            $regex = [regex]$suche 
44.
            $regex.Matches($text) | % {$_.Value} | Out-String      
45.
            $IP2 = $text -match $suche 
46.
            $gleich = ($IP2 -match $suche) 
47.
            If ($gleich) {			 
48.
                echo "ip ist eingetragen / wird geändert" 
49.
                echo "$suche / $ersetzen"   
50.
                #$text = $text -replace $IP2,$ersetze             
51.
                $text = [regex]::Replace($text,$suche,$ersetze)                 
52.
                Write-Output $text >  "C:\Windows\System32\drivers\etc\hosts1" 
53.
                  
54.
                } Else { 
55.
                    #echo $1 
56.
                    #echo "ip nicht eingetragen" 
57.
                    #echo "wert eintragen: $ersetze" 
58.
                    #$text = $matches + "$ersetze" 
59.
                    #Write-Output $text >  "C:\Windows\System32\drivers\etc\hosts2" 
60.
61.
62.
		Write-Output $text > $export 
63.
64.
65.
checkArray 
66.
hosts-replace 
67.
$stop = Get-Date 
68.
$gelaufenezeit = ($stop - $start).TotalSeconds 
69.
echo "Auftrag nach $gelaufenezeit Sek. erledigt...."
wo ist mein fehler.....?

gruß michael
Bitte warten ..
Mitglied: micneu
27.10.2010 um 11:31 Uhr
ich werde das thema demnächst neu anfangen.

gruß michael
Bitte warten ..
Ähnliche Inhalte
Entwicklung
Powershell Inhalt von Variablen vergleichen und in eine CSV Speichern
gelöst Frage von BrewtalyEntwicklung5 Kommentare

Hallo zusammen, ich bin recht neu in der Scripting-Welt mit Powershell und habe deswegen noch einige Probleme ein Powershellscript ...

Batch & Shell
Variablen Nutzen welche aus dem Inhalt von Variablen erstellt werden
gelöst Frage von der-blobBatch & Shell4 Kommentare

Hallo Zusammen, der Titel ist zwar nicht direkt aussage kräftig, aber jedoch weis ich nicht wie ich es beschreiben ...

Batch & Shell
For schleife mit variablem inhalt
gelöst Frage von Tealk144Batch & Shell5 Kommentare

Hallo zusammen, kann ich in einer Batch Datei folgendes schreiben? for Variable in Satz do ( if exist %buchstabe%: ...

Batch & Shell
Inhalte von FOR in Variable geht nicht !?
gelöst Frage von pbelclBatch & Shell9 Kommentare

Hallo Ihr Lieben, Ich habe eine Liste wo Dateien kopiert werden sollen, die so aufgebaut ist: ; Source-Pfad\, ,Zielpfad\, ,Dateiname oder ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 4 StundenViren und Trojaner

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 8 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware7 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...