Hi,
I have a big inventory file that is NOT sorted is any way.
The file is have "tagged" information like the ip address "*IP=" or the name "*NM=" .
How do I get just the ip address or the name and not the whole line?
I have tried to use AWK without any success. I always get the whole line or just the wrong pattern.
You should show what you have done rather than tell us the results of your efforts. This way it would be easier to tell you where you have gone wrong. Recommended reading: How to ask questions the smart way
Back to your problem: The following little sed script might do what you need, on the presumption that each line only contains one IP-address and one name, like in your example:
getting the IP address:
sed -n 's/.*\*IP=\([^ ]*\) .*$/\1/p' /path/to/inputfile
similar, for name:
sed -n 's/.*\*NM=\([^ ]*\) .*$/\1/p' /path/to/inputfile
The problem is that I want to print to the next white space... not only 15 characters...
/Pierre
---------- Post updated 22-04-10 at 12:47 AM ---------- Previous update was 21-04-10 at 11:15 AM ----------
Hi Again,
Due to the fact that I'm is forced to work with windows I can't get it to work.
I have changed the ' to " and I still donsen't work.
I think it has to be somthing with the windows formating.
sed -n "s/.*\*IP=\([^ ]*\) .*$/\1/p" /path/to/inputfile
Result:
1
1
1
1
1
1
....
/Pierre
edit by bakunin: i edited into the text the code-tags you should have used yourself when posting code or code-snippets. Thanks for doing this yourself from now on.
The command i wrote would have worked on the text you provided as example, at least it works here. If this is not the case on your side please provide a sample of your text and some version information about your system (OS, version, ...)
The version of sed in UnxUtils is quite old, i.e. 3.0.2, according to the UnxUtils website. It might be worth downloading the latest version of sed for Windows, i.e. 4.2, from Sed for Windows.
It might help a little to learn a few basics of regular expressions. You might want to read this thread for a (very short) introduction on regular expressions.
Here is what extracts from your sample above what you want: