I want to copy the line that have strings to another file
for eg
A file contain the below lines
JavaScript
x
ram 100 50
gopal 200 40
ravi 50 40
krishna 300 600
Govind 100 34
I want to copy the lines that has 100 or 200 to another file by skipping all the characters before (first occurrence in a line)100 or 200
I want it to copy 100 50 200 40 100 34 to another file
I am using sed -n ‘/100/p’ filename > outputfile
can you please help me in adding lines with any one of the string using a single command
Advertisement
Answer
Short sed approach:
JavaScript
sed '/[12]00/!d; s/[^0-9[:space:]]*//g; s/^ *//g;' filename > outputfile
/[12]00/!d
– exclude/delete all lines that don’t match100
or200
s/[^0-9[:space:]]*//g
– remove all characters except digits and whitespaces
The outputfile
contents:
JavaScript
100 50
200 40
100 34