Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBASICBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDomain RegistrierungDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetiOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal & DelphiPerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige PeripheriegeräteSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideoViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows NetzwerkWindows PhoneWindows ServerWindows SystemdateienWindows ToolsWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
Weniger Werbung?
Cover IT-Administrator
In der April-Ausgabe hat sich das IT-Administrator Magazin die Netzwerksicherheit zum Schwerpunkt gesetzt. Darin zeigt Ihnen die Redaktion, wie Sie mit Honeypots auf Hacker-Jagd im Netzwerk gehen und mit OpenVPN für sichere Datentunnel sorgen. Außerdem lesen Sie, was die neue Serverrolle Network Controller in Windows 10 Server zu bieten hat und wie Sie für mehr Sicherheit auf Windows-Rechnern mit dem Gratis-Tool EMET sorgen. In den ...

Das Administrator.de-Gewinnspiel: Stelle dein Wissen unter Beweis und gewinne tolle Preise!

GELÖST

Ubuntu Zeilen Löschen aus .txt Datei

Frage Linux Ubuntu

Mitglied: racer1601

racer1601 (Level 1) - Jetzt verbinden

25.03.2012, aktualisiert 18:04 Uhr, 4191 Aufrufe, 4 Kommentare

Hallo

ich habe hier noch ein Problem mit dem auslesen und löschen von Zeilen in einem Logfile

Zum Problem:

Die zeilen Anzahl des Logfiles BachupLog.txt (Der Schreibfehler ist richtig so) soll eingelesen werden und auf eine länge von 150 Zeilen gekürst werden wenn er länger ist als 150 Zeilen.
Die Shell geht bis zum punkt: zeilen_gesamt=$(sed -n '$=' $LOG) und wertet diese auch aus aber dann bricht das Programm ab. Habe schon eine weile rum probiert aber komme nicht auf den Fehler. Unter dem CODE hänge ich mal Bilder an.

Hier mal eine test shell:
01.
#!/bin/bash -x 
02.
# Sicherungsscript.sh 
03.
#*****************************************# 
04.
#***           BackupScript            ***# 
05.
#***            00.03.2012             ***# 
06.
#***       V.0.1Linux A. Schmidt       ***# 
07.
#*****************************************# 
08.
DATE=$(date +%Y.%m.%d) 
09.
TIME=$(date +%H:%M) 
10.
#Variable DATE und TIME erstellen 
11.
####################################################### 
12.
LOG=/home/administrator/BachupLog1.txt 
13.
zeilen_max=150 
14.
zeilen_gesamt=$(sed -n '$=' $LOG)


bis hier kommt die shell wenn ich es laufen lasse dann kommt fehler in Zeile 97 und er hat dann auch nichts getan.

01.
if [ $zeilen_gesamt -gt 150 ]; 
02.
    then 
03.
         echo "#################hinter if###############" >> $LOG 
04.
         let zeilen_loeschen=$zeilen_gesamt-$zeilen_max 
05.
         sed -i "1,${zeilen_loeschen}d" $LOG 
06.
         echo "#############Prüfung der Länge wurde durchgeführt############ >> $LOG 
07.
fi 
08.
#####################################################

Ich hoffe es kann mir jemand helfen!

Klicke auf das Bild, um es zu vergrößern - 1847732db470e5d196cc74d3d698b757.jpg

Klicke auf das Bild, um es zu vergrößern - d2ad641d02be37dd35a12849ef3c498c.jpg
Mitglied: bastla
25.03.2012 um 18:27 Uhr
Hallo racer1601!

Wäre nicht eher "head tail" das, was Du suchst?

Grüße
bastla
Bitte warten ..
Mitglied: hmarkus
25.03.2012 um 19:52 Uhr
Hallo auch in diesem Thread zum ähnlichen Thema

Vielleicht ist sed ein bisschen zu kompliziert für solch einfachen Dinge.

Zeilenzahl der Datei
lines=`wc -l $LOG | cut -d " " -f 1` 
zu löschende Zeilen (Anzahl)
linestodelete=`expr $lines - 150`
und dann sollte Dein Code für sed eigentlich funktionieren
sed -i "1,$linestodelete d" $LOG


Markus
Bitte warten ..
Mitglied: Lochkartenstanzer
25.03.2012 um 20:51 Uhr
Ich würd' s so lösen:

tail -n $zeilen_max  $LOG >$tempfile 
mv $tempfile $LOG

lks
Bitte warten ..
Mitglied: racer1601
28.03.2012 um 12:32 Uhr
Danke euch beiden geht jetzt alles!

Alex
Bitte warten ..
Neuester Wissensbeitrag
Windows Server

Windows 2012 Core Server remote administrieren

Anleitung von Systembastler zum Thema Windows Server ...

PHP
GELÖST PHP IP adresse aus TXT Datei auslesen (2)

Frage von gamerff zum Thema PHP ...

Microsoft Office
GELÖST Gewisse Excel Spalten seperat als einzelne TXT Datei speichern (13)

Frage von thomas1972 zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
Zwei Fritzboxen über WLAN verbinden (ohne Verlust) (15)

Frage von Breaked zum Thema LAN, WAN, Wireless ...

TK-Netze & Geräte
GELÖST TK-Anlage wieviel Erfahrung ist notwendig (10)

Frage von TomJones zum Thema TK-Netze & Geräte ...

Entwicklung
Powershell Script zum löschen von Userprofilen (10)

Frage von Thomas91 zum Thema Entwicklung ...

DNS
GELÖST Bind9 Konfig-Problem (9)

Frage von TiTux zum Thema DNS ...