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

String einer Variable in ein Tabellenformat Wandeln Powershell

Frage Entwicklung Batch & Shell

Mitglied: Dpole86

Dpole86 (Level 1) - Jetzt verbinden

06.12.2013, aktualisiert 12:17 Uhr, 1599 Aufrufe, 5 Kommentare, 1 Danke

Guten Morgen zusammen

Ich habe folgende Variable mit folgendem Inhalt

$Rsync_Name
Inhalt:
NBAPS99NBAPS96NBAPS94NBAPS87NBAPS86NBAPS85NBAPS84NBAPS83NBAPS77NBAPS76NBAPS71NBAPS69NBAPS57NBAPS53NBAPS50NBAPS49NBAPS47NBAPS44NBAPS201NBAPS200NBAPS199NBAPS198NBAPS185NBAPS183NBAPS182NBAPS181NBAPS179NBAPS1 
78NBAPS173NBAPS170NBAPS169NBAPS166NBAPS165NBAPS164NBAPS163NBAPS158NBAPS157NBAPS156NBAPS151NBAPS147NBAPS146NBAPS145NBAPS144NBAPS143NBAPS141NBAPS140NBAPS139NBAPS138NBAPS137NBAPS136NBAPS135NBAPS134NBAPS133NB 
APS131NBAPS130NBAPS128NBAPS123NBAPS122NBAPS121NBAPS118NBAPS115NBAPS114NBAPS112NBAPS110NBAPS109NBAPS106
Gibt es eine Möglichkeit das mir die Ausgabe untereinander angezeigt wird?

Über $Rsync_name | format-table geht es nicht.

Grüße und Danke

Roman
Mitglied: colinardo
06.12.2013, aktualisiert um 09:43 Uhr
Hallo Roman,
wenn der Inhalt deiner Variablen einzelne Objekte sind:
$Rsync_name | format-list
so wie du den Inhalt hier gepostet hast muss da aber noch ein Split zum trennen der Namen rein oder hast du hier Mist gepostet ?
Wenn der Inhalt tatsächlich als String so aussieht ist dir aber beim extrahieren im vorherigen Schritt ein gewaltiger Fehler unterlaufen ...

Grüße Uwe
Bitte warten ..
Mitglied: Dpole86
06.12.2013 um 09:59 Uhr
Guten Morgen Uwe

Wie immer danke für deine Antwort.

Mein code bis dahin lautet:

01.
Remove-PSDrive spwodb 
02.
$Date = Get-Date -Format "yyMMdd"; 
03.
$Startzeit = Get-Date -Format "HHmmss"; 
04.
$Mailsubject = "Auswertung RoadWarriors " + $Date; 
05.
$Filename = "aps_export_devices_" + $Date + ".html"; 
06.
$Filename_csv = "aps_export_devices_" + $Date + ".csv"; 
07.
#$Folder_rsync = "\\apsv254\c$\Program Files (x86)\ICW\"; 
08.
$Data_spwo = @(); 
09.
$Data_rsync=@(); 
10.
$Data_rsync_compared=@(); 
11.
$Data_spwo_compared=@(); 
12.
 
13.
#Rsync Anfang  
14.
 
15.
# Lese das Log ein, suche nach NBAPS und erstelle ein neues Objekt in $Data_rsync 
16.
 $logfile = "C:\Users\admrd\Desktop\test\bat\rsyncd.log" 
17.
 $content = gc $logfile 
18.
 $logins = @(); 
19.
 foreach($line in $content){ 
20.
     if ($line -cmatch "connect from NBAPS[\d]+"){ 
21.
         $arrLine = $line.Split(" ") 
22.
         $logins += New-Object PSObject -Property @{"Name"=$arrLine[5];"Date"=$arrLine[0];"Time"=$arrLine[1]} 
23.
     }      
24.
25.
$Data_rsync = $logins | ?{(get-date $_.Date) -gt (get-date).AddDays(-21)} | sort Name,Date,Time -Descending | group Name | %{$_.Group[0]} | select Name,Date,Time 
26.
 
27.
#Vergleiche die beiden Variablen und gebe die unterschiede aus.  
28.
 
29.
#$Data_rsync = $logins | ?{(get-date $_.Date) -gt (get-date).AddDays(-21)} | sort Name,Date,Time -Descending | group Name | %{$_.Group[0]} | select Name,Date,Time 
30.
 
31.
$Data_rsync_compared = Compare-Object -ReferenceObject $Data_rsync -DifferenceObject $Output -Property Name -PassThru | ?{$_.Sideindicator -eq "=>"}| select Name 
32.
 
33.
 
34.
# Teile die Daten aus $Data_Rsync in einzelne Spalten auf. 
35.
$Rsync_Clients = @(); 
36.
$Rsync_Zeit = @(); 
37.
$Rsync_Datum = @(); 
38.
 
39.
foreach($row in $Data_rsync) 
40.
41.
   $Rsync_Name += $row.Name; 
42.
   $Rsync_Zeit += $row.Time; 
43.
   $Rsync_Datum += $row.Date; 
44.
 
45.
46.
 
Wenn ich eine Split anweisung mache, also $rsync_name.split('/N') wird aber das 'N' abgeschnitten.
Ich bekomme dann zwar auch eine tabelle nur ohne 'N'

ich müsste von N bis zum nächsten N splitten

ich muss allerdings zugeben ich habe keine ahnung wie ich das anstelle.

Im Grunde kann ich doch das Split nehmen, hochzählen bis zum nächsten N und da abschneiden.
oder ist mein ansatz falsch?
Bitte warten ..
Mitglied: colinardo
06.12.2013, aktualisiert um 10:10 Uhr
Dein Ansatz ist nicht gut, ich sehe hier z.B. nicht wo die Variable $output erzeugt wird, da liegt wahrscheinlich der "Hammer" begraben ...
Wenn ich eine Split anweisung mache, also $rsync_name.split('/N') wird aber das 'N' abgeschnitten.
das ist klar das das nicht geht, aber bei deiner extrahierung der Namen ist komplett was schief gelaufen. Wenn das ein Unix-String mit für Windows unsichtbaren Zeilenumbrüchen ist, lassen sich die Namen via $Rsync_name.Split("`n") in ein Array wandeln.
Wann ziehst du dir endlich die Powershell-Doku-Seiten rein die ich dir geschickt habe ?
Bitte warten ..
Mitglied: Dpole86
06.12.2013 um 10:17 Uhr
Habe es mit einem Kollegen durch folgenden Code gelöst

01.
 
02.
$string = $Rsync_Name 
03.
$chars = $string.ToCharArray() 
04.
[int]$i = -1 
05.
$computers = @() 
06.
 
07.
foreach ($c in $chars){ 
08.
 
09.
  if(($c -eq 'N') -or ($c -eq 'n')){ 
10.
    $i++ 
11.
    $computers += $c 
12.
  }else{ 
13.
    $computers[$i] += $c 
14.
15.
16.
 
Bitte warten ..
Mitglied: colinardo
06.12.2013 um 10:21 Uhr
naja wenn mans direkt richtig extrahiert hätte, wäre das nicht nötig gewesen ...
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Teil eines Strings als Variable setzen
gelöst Frage von tHe-jAyBatch & Shell2 Kommentare

Hallo, für ein kleines Batch-Script benötige ich einen Servicenamen als Variable. Den Servicenamen frage ich über folgenden Befehl ab: ...

Batch & Shell
Powershell String selektieren....
gelöst Frage von mguenth83Batch & Shell4 Kommentare

Hi, Ich wollte Euch mal fragen wie Ihr das machen würdetich habe eine Liste von AD Usern mit Telefonnummer ...

Batch & Shell
Powershell select-string -pattern
gelöst Frage von LianenSchwingerBatch & Shell2 Kommentare

Hallo, ich muss auf die schnelle ca. 1000 EDIFACT Dateien auswerten. Dazu versuche ich mich gerade in Powershell einzuarbeiten. ...

Windows Server
Powershell: UInt32 in String konvertieren
gelöst Frage von Susie1703Windows Server2 Kommentare

Hallo an Alle, ich stehe gerade auf dem Schlauch und mein Powershell Guru Kollege ist im Urlaub. Habe folgendes ...

Neue Wissensbeiträge
Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 5 StundenWindows 101 Kommentar

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 7 StundenSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Internet

USA: Die FCC schaff die Netzneutralität ab

Information von Frank vor 21 StundenInternet3 Kommentare

Jetzt beschädigt US-Präsident Donald Trump auch noch das Internet. Der neu eingesetzte FCC-Chef Ajit Pai ist bekannter Gegner einer ...

DSL, VDSL

ALL-BM200VDSL2V - Neues VDSL-Modem mit Vectoring von Allnet

Information von Lochkartenstanzer vor 1 TagDSL, VDSL1 Kommentar

Moin, Falls jemand eine Alternative zu dem draytek sucht: Gruß lks

Heiß diskutierte Inhalte
Netzwerkmanagement
Mehrere Netzwerkadapter in einem PC zu einem Switch zusammenfügen
Frage von prodriveNetzwerkmanagement21 Kommentare

Hallo zusammen Vorweg, ich konnte schon einige IT-Probleme mit Hilfe dieses Forums lösen. Wirklich klasse hier! Doch für das ...

Windows Server
Anmeldung direkt am DC nicht möglich
Frage von ThomasGrWindows Server16 Kommentare

Hallo, ich habe bei unserem Server 2016 Standard ein Problem. Keine Ahnung wie das auf einmal passiert ist. Ich ...

Hardware
Links klick bei Maus funktioniert nicht
gelöst Frage von Pablu23Hardware16 Kommentare

Hallo erstmal. Ich habe ein Problem mit meiner relativ alten maus jedoch denke ich nicht das es an der ...

TK-Netze & Geräte
VPN-fähige IP-Telefone
Frage von the-buccaneerTK-Netze & Geräte15 Kommentare

Hi! Weiss noch jemand ein VPN-fähiges IP-Telefon mit dem man z.B. einen Heimarbeitsplatz gesichert anbinden könnte? Habe nur einen ...