AWK Scripting
Hello all...
I am quite a begginner with Linux and I need your help, hope you can bare with me. I want to use AWK for windows for an required action: The issue follows: I have a txt file with a very very long line containing multiples of strings like: bulkbulkSTRINGxxxxxxxxxxxxOTHERSTRINGbulkbulkbulk The x are letters, 12 of them and I want to have an AWK (grep if possible) to strip to another text file the 12 letters (xxxxxxxxxxxxxx) between the given strings. I keep trying and no success.. Your help will be greatly appreciated. Horia. |
If the file has a consistant location of the xxxxx field. Is it separated by spaces, colon ( : ) or something like that?
An actual snip of the file would be more usefull. |
Is the use of awk or grep necessary?
If the position of the x string on each line is fixed, it is easily done with cut, like so: Code:
cut -c13-24 file Otherwise, if the position is not fixed, but rather between STRING and OTHERSTRING as you write, then sed is good; Code:
sed 's|^.*STRING\(.\{12\}\)OTHERSTRING.*$|\1|' file |
Or in awk (as originally requested): :}
Code:
awk '{print gensub(/.+STRING(.+)OTHERSTRING.+/, "\\1",1)}' file Cheers, Tink |
SED is really great to use, here is a site with some useful examples of SED:
http://www.student.northpark.edu/pem...d/sed1line.txt Probably the most common commands I use for bash scripting would be AWK, GREP, SED, CUT and the pipe (|) command. Learn how to combine these commands and you have some powerful text manipulation tools. |
In your first message you said that you want to use "AWK for Windows". If you are using Microsoft windows, I would highly recommend installing Cygwin. This will allow you to work in the bash shell and give you all the handy text utilities. With Cygwin/X you can also run X Windows programs such as xpdf or xdvi.
I think that you wanted to add the pattern to another file, which can be done with simple redirection, ie >file2 or >>file2, at the end of the line. Grep also has a 'w" command that can print the output to a file instead. So you could extract different patterns to different files. If you can download the source for the awk package ( and the awk-doc package ), you can produce a manual and book on AWK and AWK programming. The package should have a "make ps" or "make dvi" or "make pdf" target to produce the books from the source. Good Luck. |
All times are GMT -5. The time now is 07:10 PM. |