Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Zeile 100 an Zeile 1 anfügen,...

Frage Entwicklung Perl

Mitglied: mete-eve

mete-eve (Level 1) - Jetzt verbinden

16.10.2008, aktualisiert 21.10.2008, 4463 Aufrufe, 3 Kommentare

Hallo Leute,
ich bin gerade in der Abteilung Netzwerk in meiner Ausbildung.
Ich komme leider gerade beim Programmieren in Perl nicht weiter.

Ich habe den Befehl esxtop (ESX Server) in eine Datei geschrieben.
Das blöde an dieser Sache ist nur:
Mein Dokument hat 3575 Zeilen.
Die hälfte davon ist die Bezeichnung die andere die Werte dazu.

Network Port
Memory
.
.
.
(leerzeile)
"0.25"
"100"
.
.
.

Ich habe die Zeilennummern.
Nun möchte ich die Zeile 1789 an Zeile 1 anfügen (Network Port = "0.25")
und dann 1790 an Zeile 2, usw.

Die Daten stehen in $output.

Kann mir jemand einen Tipp geben.
Bin über jede hilfe dankbar.
Mitglied: mete-eve
16.10.2008 um 11:43 Uhr
Ich habe jetz es so versucht:

open (in,"<$filename") || die $!;
while (<in>)
{
if ($. eq $anzahl_wert)
{
  1. schreibe Wert nach Bezeichung

#while (<in>)
#{
  1. if ($. eq $anzahl_bez)
  2. {
  3. print $_;
  4. }
#}
print $_;
last;
}
}
Mein Problem ist jetzt, ich habe den Wert zwar muss ihn aber noch Bezeichnung schreiben.
Das mit der while-Schleife in der Schleife funktioniert nicht.

Hat jemand eine Idee?
Bitte warten ..
Mitglied: dog
16.10.2008 um 16:24 Uhr
Hallo,

ich kann dir nur die Lösung für Arme-Leute-Perl (PHP) sagen (ungetestet):
01.
<?php 
02.
 
03.
	$fileArray = file('---'); //Liest jede Zeile in ein Array 
04.
	 
05.
	foreach ($fileArray as $lineNum => $line) { 
06.
		if(trim($line) == '') { 
07.
			$splitterLine = $lineNum
08.
			break
09.
10.
11.
	 
12.
	$keys = array_slice($fileArray,0,$splitterLine-1); //Ein Array nur mit den Keys 
13.
	$values = array_slice($fileArray,$splitterLine+1); //Ein Array mit den Werten 
14.
	 
15.
	$data = array(); 
16.
	for ($i=0; $i < count($keys); $i++) {  
17.
		$data[trim($keys[$i])] = trim($values[$i]); 
18.
19.
 
20.
?>
Vielleicht bringt dich das ja auf eine Idee
Bitte warten ..
Mitglied: mete-eve
21.10.2008 um 11:27 Uhr
Meine Lösung:

foreach (@Lines)
{
          1. Bezeichung 1-1787
          if ($zahl eq $Zeile_bez && $zahl < $Zeile_max_bez)
          {
          push(@bez, $_);

          $Zeile_bez++;
          }

                  1. Wert 1789-3575
                  if ($zahl eq $Zeile_wert && $zahl < $anzahl)
                  {
                                  1. Gewuenschte Struktur in Datei schreiben
                                  open (ESXTOP,">>$check_esxtop") || die $!;

                                  $bez[$zeile] =~ s/\n//g;
                                  print ESXTOP $bez[$zeile];
                                  print ESXTOP " = ";
                                  print ESXTOP $_;

                                  close(ESXTOP);

                                  $zeile++;
                                  $Zeile_wert++;
                                  }
                                  $zahl++;
                                  }
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(2)

Tipp von agowa338 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...