Trimming Whitespace From Beginning and end of Text Lines
Martin McCormick
martin at dc.cis.okstate.edu
Fri May 12 09:03:07 PDT 2006
Chuck Swiger quotes and writes:
>Giorgos Keramidas wrote:
>> This fails to remove multiple occurences of the [[:space:]] class.
>>
>> There are at least the following ways:
>>
>> sed -i -e 's/^[[:space:]]*' -e 's/[[:space:]]*$//' file ...
That did it! As soon as I saw the *, I knew what I was
not doing.
>> perl -pi -e 's/^\s*(\S.*\S)[ \t]*$/$1/' file ...
>>
>> The first one seems more straightforward to me most of the time,
>> but there are times I find Perl's `-pi -e ...' idiom very convenient.
>>
>It is, and I wish to acknowledge the above are entirely valid solutions
>to the problem, but...
>
> python -c 'import sys; print sys.stdin.read().strip()' < file...
>
>...has the advantage of being human readable. My old 300-baud accoustic
>modem used to generate output which in hindsight looks astonishingly
>close to regex character classes. :-)
Wow! I'd almost forgotten some of that by-gone era. I
had a 1200-baud modem that, in conjunction with the clock slips
between our local telephone company and our PBX, used to march []
and various other garbage characters that did look just like
regex. You just had to keep re-dialing until you finally got a
connection that worked.
Thanks to everyone for the help.
Martin McCormick WB5AGZ Stillwater, OK
Systems Engineer
OSU Information Technology Department Network Operations Group
More information about the freebsd-questions
mailing list