Sed: Find and Replace The Whole Line [ Regex ]

in Categories , , last updated December 14, 2012

I have a line as follows in squid.conf file. My sever is hosted in a cloud:

acl verizonfios src 1.2.3.4

My ISP will force an IP address change every week or two. I would like to replace them with a new IP

acl verizonfios src 4.5.6.7

How do I replace the line starting with “acl verizonfios” with new IP address using sed and ssh?

Linux / Unix: sed Command Print Only Matching Lines

in Categories last updated October 19, 2012

I see many examples and man pages on how to do operations like search-and-replace using sed. But, I want to match a given string or a regular pattern expression and display on the screen. How do I print lines with matching pattern using sed command only under Unix like operating systems?

Linux / Unix sed: Delete Word From File / Input

in Categories last updated September 15, 2012

I‘ve a file as follows:

This is a test.
One bang two three
Foo dang Bar
001 0xfg 0xA
002 0xA foo bar 0xfG
I'm done

How do I delete all “words” from the above file which ends with a particular letter (say ‘g’) in each line? The output should be as follows:

This is a test.
One two three
Foo Bar
001 0xA
002 0xA foo bar
I'm done

How do I delete regex-based word using sed or awk under Linux / Unix like operating systems?

HowTo: grep Text Between Two Words in Unix / Linux

in Categories , last updated August 12, 2012

I got over 100s of HTML files in the following format:
….
…..

<PRE>

my data 1
my data 2
my data 3
my data 10000
my data N times
</PRE>
.....
..

How do I extract text between two words (<PRE> and </PRE>) in unix or linux using grep command?

Linux / Unix: Sed Substitute Multiple Patterns [ Find & Replace ]

in Categories last updated January 20, 2012

I‘m using the date +’%D_%T’ to store Unix system date and time in a shell variable called $_now:

_now=”$(date +’%D_%T’)”
echo $_now

Outputs:
01/20/12_16:10:42

I’d like to replace / and : with _. I’m aware of the following sed command:

sed ‘s/\//_/g
> s/:/_/g’ <<<"$_now"

Outputs:
01_20_12_16_14_09

How do I specify two pattern within the same sed command to replace | and : with _ so that I can get output as 01_20_12_16_10_42?