LinuxQuestions.org
Latest LQ Deal: Complete CCNA, CCNP & Red Hat Certification Training Bundle
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie
User Name
Password
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!

Notices


Reply
  Search this Thread
Old 10-26-2006, 04:41 PM   #1
horikka
LQ Newbie
 
Registered: Oct 2006
Posts: 1

Rep: Reputation: 0
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.
 
Old 10-26-2006, 05:08 PM   #2
homey
Senior Member
 
Registered: Oct 2003
Posts: 3,057

Rep: Reputation: 59
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.
 
Old 10-26-2006, 05:23 PM   #3
Bebo
Member
 
Registered: Jul 2003
Location: Göteborg
Distribution: Arch Linux (current)
Posts: 553

Rep: Reputation: 31
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
if the x string is positioned from character 13 to character 24.

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
 
Old 10-26-2006, 06:32 PM   #4
Tinkster
Moderator
 
Registered: Apr 2002
Location: in a fallen world
Distribution: slackware by choice, others too :} ... android.
Posts: 23,067
Blog Entries: 11

Rep: Reputation: 910Reputation: 910Reputation: 910Reputation: 910Reputation: 910Reputation: 910Reputation: 910Reputation: 910
Or in awk (as originally requested): :}
Code:
awk '{print gensub(/.+STRING(.+)OTHERSTRING.+/, "\\1",1)}' file

Cheers,
Tink
 
Old 10-26-2006, 06:55 PM   #5
fotoguy
Senior Member
 
Registered: Mar 2003
Location: Brisbane Queensland Australia
Distribution: KirraMail Live Email Server
Posts: 1,285

Rep: Reputation: 61
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.
 
Old 10-26-2006, 07:10 PM   #6
jschiwal
LQ Guru
 
Registered: Aug 2001
Location: Fargo, ND
Distribution: SuSE AMD64
Posts: 15,733

Rep: Reputation: 671Reputation: 671Reputation: 671Reputation: 671Reputation: 671Reputation: 671
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.

Last edited by jschiwal; 10-26-2006 at 07:17 PM.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Split large file in several files using scripting (awk etc.) chipix Programming 14 10-29-2007 11:16 AM
csh scripting and awk? Mr. Asdf Linux - General 3 07-13-2006 08:26 AM
Forum on scripting, sed, awk, etc.?? pixellany Programming 3 12-01-2005 01:16 PM
Simple bash/awk/sed scripting question R00ts Programming 4 04-16-2005 02:55 AM
awk scripting question di11rod Linux - Software 11 04-01-2005 02:47 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie

All times are GMT -5. The time now is 10:57 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration