Sponsored Content
Top Forums Shell Programming and Scripting Delete lines where line length is < x Post 302437136 by alister on Wednesday 14th of July 2010 05:35:40 AM
Old 07-14-2010
Quote:
Originally Posted by ensameer
Here you go.
Code:
#!/bin/ksh
set -x
logfile=$dir/logfilename.txt
thr=100
cat $logfile | while read a
do
nochar = `echo $a | wc -c`
sleep 1
if (( $nochar < $thr )) then
echo echo "$a" >>new.logfile.log
else "no. of chars less than 10";
fi
done

That read command will discard leading and trailing whitespace and mishandle any occurrences of a backslash, leading to erroneous line length counts. Also, by using ${#a}, you can determine length without using wc.

Code:
while IFS= read -r a; do
    [ ${#a} -ge 100 ] && echo "$a"
done < "$logfile" >> "$logfile".new

Regards,
Alister

Last edited by alister; 07-14-2010 at 06:45 AM..
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Sed working on lines of small length and not large length

Hi , I have a peculiar case, where my sed command is working on a file which contains lines of small length. sed "s/XYZ:1/XYZ:3/g" abc.txt > xyz.txt when abc.txt contains lines of small length(currently around 80 chars) , this sed command is working fine. when abc.txt contains lines of... (3 Replies)
Discussion started by: thanuman
3 Replies

2. Shell Programming and Scripting

search 2 lines and delete above line

Hi, I've been searching in this forum for the last 4 hours trying to do one thing: search 2 lines and delete the above line. So far I have not be able to find something similar in this forum, so I need help. This is what I'm trying to do. For example, I have a file called file1: file1 word1... (4 Replies)
Discussion started by: shamushamu
4 Replies

3. Shell Programming and Scripting

Delete lines with line numbers.

Hi, I have a file will 1000 lines.... I want to deleted some line in the file... like 800-850 lines i want to remove in that... can somebody help me..? thanks. (2 Replies)
Discussion started by: Kattoor
2 Replies

4. Shell Programming and Scripting

Delete all lines after a specific line ?

Hello. My file is like this: a b c d e f g h i I want to delete all lines after the 3rd line, means after the "c". Is there any way to do this? The lines differ between them and the lines I want to delete does not have a specific word, or the lines I want to keep (a,b,c) does not have a... (4 Replies)
Discussion started by: hakermania
4 Replies

5. Shell Programming and Scripting

delete multiple lines by line number

I have file with 10000 records and i need to delete the lines in single shot based on line number range say from 10 to 51 , 53 to 59 , 105 to 107, 311 to 592 etc... between range works fine for me but how to achive for above case? please help sed '10,51 {d}' infile > outfile (5 Replies)
Discussion started by: zooby
5 Replies

6. Shell Programming and Scripting

Delete lines based on line number

I have a file with ~200K lines, I need to delete 4K lines in it. There is no range. I do have the line numbers of the lines which I want to be deleted. I did tried using > cat del.lines sed '510d;12d;219d;......;3999d' file > source del.lines Word too long. I even tried... (2 Replies)
Discussion started by: novice_man
2 Replies

7. Shell Programming and Scripting

How to delete several lines from file by line number?

Hi I am using the following command to delete a line from the file by line number: line_number=14 sed "${line_number}d" inputfilename > newfilename Is there a way to modify this command to specify the range of lines to be deleted, lets say from line 14 till line 5 ? I tried using the... (5 Replies)
Discussion started by: aoussenko
5 Replies

8. Shell Programming and Scripting

Need to delete all lines where any line meets a condition

Here is an example of a file... foo1,good foo1,good foo2,error foo2,good Note that both rows for foo1 have good in the 2nd field, but one of the foo2 rows has error... I need something in ksh/awk/perl that will delete ALL foo2 lines if ANY of them have error in the 2nd field...so: ... (7 Replies)
Discussion started by: dbiggied
7 Replies

9. UNIX for Advanced & Expert Users

How to find a string in a line in UNIX file and delete that line and previous 3 lines ?

Hi , i have a file with data as below.This is same file. But actual file contains to many rows. i want to search for a string "Field 039 00" and delete that line and previous 3 lines in that file.. Can some body suggested me how can i do using either sed or awk command ? Field 004... (7 Replies)
Discussion started by: vadlamudy
7 Replies

10. Shell Programming and Scripting

Delete all lines except a line starting with string

Shell : bash OS : RHEL 6.8 I have a file like below. $ cat pattern.txt hello txt1 txt2 txt3 some other text txt4 I want to remove all lines in this file except the ones starting with txt . How can I do this ? (4 Replies)
Discussion started by: omega3
4 Replies
IPSEC_BARF(8)							Executable programs						     IPSEC_BARF(8)

NAME
ipsec_barf - spew out collected IPsec debugging information SYNOPSIS
ipsec barf [--short --maxlines <100>] DESCRIPTION
Barf outputs (on standard output) a collection of debugging information (contents of files, selections from logs, etc.) related to the IPsec encryption/authentication system. It is primarily a convenience for remote debugging, a single command which packages up (and labels) all information that might be relevant to diagnosing a problem in IPsec. The --short option limits the length of the log portion of barf's output, which can otherwise be extremely voluminous if debug logging is turned on. --maxlines <100> option sets the length of some bits of information, currently netstat -rn. Useful on boxes where the routing table is thousands of lines long. Default is 100. Barf censors its output, replacing keys and secrets with brief checksums to avoid revealing sensitive information. Beware that the output of both commands is aimed at humans, not programs, and the output format is subject to change without warning. Barf has to figure out which files in /var/log contain the IPsec log messages. It looks for KLIPS and general log messages first in messages and syslog, and for Pluto messages first in secure, auth.log, and debug. In both cases, if it does not find what it is looking for in one of those "likely" places, it will resort to a brute-force search of most (non-compressed) files in /var/log. FILES
/proc/net/* /var/log/* /etc/ipsec.conf /etc/ipsec.secrets HISTORY
Written for the Linux FreeS/WAN project <http://www.freeswan.org> by Henry Spencer. BUGS
Barf uses heuristics to try to pick relevant material out of the logs, and relevant messages which are not labelled with any of the tags that barf looks for will be lost. We think we've eliminated the last such case, but one never knows... Finding updown scripts (so they can be included in output) is, in general, difficult. Barf uses a very simple heuristic that is easily fooled. The brute-force search for the right log files can get expensive on systems with a lot of clutter in /var/log. AUTHOR
Paul Wouters placeholder to suppress warning libreswan 12/16/2012 IPSEC_BARF(8)
All times are GMT -4. The time now is 06:07 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy