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

Bestimmte Zeilen einer Datei addieren - Linux

Frage Entwicklung Batch & Shell

Mitglied: lapvika

lapvika (Level 1) - Jetzt verbinden

12.09.2014, aktualisiert 11:43 Uhr, 846 Aufrufe, 2 Kommentare

Hallo zusammen,


ich habe eine Datei die wie folgt aussieht:

536870912 - System1_2
536870912 - System1_3
536870912 - System1_4
536870912 - System1_5
5242880 - System1_6
1342177280 - System2_1
1342177280 - System2_2
1342177280 - System2_3
1342177280 - System2_4
5242880 - System2_5
805306368 - System3_1
805306368 - System3_2
805306368 - System3_3
805306368 - System3_4
5242880 - System3_5

Die Zahlen sind die Größenangaben in KB.

ich möchte nun pro System die Gesamtgröße in TB ausgeben lassen und in eine neue Datei schreiben lassen.

Also

System 1 - 2,05 TB
System 2 - 3,05 TB
.
.
.


Weiß jemand Rat wie das funktioniert?

Vielen Dank!
Mitglied: colinardo
LÖSUNG 12.09.2014, aktualisiert 26.05.2015
Moin lapvika,
könntest du so machen:
01.
#!/bin/bash 
02.
file="file.txt" 
03.
cat "$file" | awk -F ' - |_' 'BEGIN{sys = ""; size = 0 }{if(sys == ""){sys = $2}; if(sys == $2){size += $1}else{printf("%s - %.2fTB\n",sys,tot);size = $1;sys = $2};tot = size / 1073741824}END{printf("%s - %.2fTB\n",sys,tot)}' >newfile.txt 
04.
cat newfile.txt
Grüße Uwe
Bitte warten ..
Mitglied: lapvika
12.09.2014 um 13:13 Uhr
Danke vielmals Uwe!
Bitte warten ..
Ähnliche Inhalte
Datenbanken
gelöst Kreuztabelle addieren (8)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

PHP
gelöst TXT Datei auslesen und bestimmte Zeilen in Variable setzen (11)

Frage von 126594 zum Thema PHP ...

VB for Applications
gelöst Per Vbscript bestimmte Zeile ungeachtet der Nummerierung prüfen (7)

Frage von aletri zum Thema VB for Applications ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
iOS
IPhone wird ferngesteuert Hacker? (21)

Frage von Akcent zum Thema iOS ...

Vmware
VMware ESX - Start einer VM verhindern (19)

Frage von emeriks zum Thema Vmware ...

Vmware
gelöst Virtuelle Maschine mit der cmd öffnen? (12)

Frage von PascalIT zum Thema Vmware ...