Shell script to filter certain lines from a file


 
Thread Tools Search this Thread
Top Forums UNIX for Beginners Questions & Answers Shell script to filter certain lines from a file
# 1  
Old 06-03-2019
Shell script to filter certain lines from a file

hi~
i need script on AIX. and have a text file following :
Code:
create aa
1
2
3
from a@a;

create bb
from b;

create cc
3
4
5
6
6
7
from c@c;

I want to find the create statement that contains the '@' character as bellow
Code:
create aa
from a@a;
create cc
from c@c;

anybody help me.


Moderator's Comments:
Mod Comment
Please wrap all code, files, input & output/errors in CODE tags.
It makes them far easier to read and preserves spaces for indenting or fixed-width data

Last edited by rbatte1; 06-03-2019 at 10:37 AM..
# 2  
Old 06-03-2019
Any attempts / ideas / thoughts from your side?
# 3  
Old 06-03-2019
When you say "AIX" you perhaps imply the usage of ksh. ksh (which is a ksh88) or ksh93? Or does it not matter to you?

Moderator's Comments:
Mod Comment by the way, i have edited the thread title to better reflect your goal

bakunin
# 4  
Old 06-03-2019
Note that if you keep coming to us with requests for us to write code for you with you not attempting to write any code on your own, we're likely to lose interest in helping you. We are here to help you learn how to do this stuff on your own; not to act as your unpaid programming staff.

I would be tempted to try something like:
Code:
#!/bin/ksh
awk '
/^create / {
	c = $0
}

/^from .*@/ {
	print c
	print
}' "$@"

Store the above in a file named whatever you want your utility to be named and make it executable in a directory in your search path (i.e. one of the directories named in the environment variable PATH).

If you name your utility scriptname, you can then invoke it any of the following forms:
Code:
cat pathname... | scriptname
scriptname pathname...
scriptname < pathname

where pathname... can be replaced with the pathname(s) of one or more files you want to process. (Note that there is no ... in the last form (and only one pathname can be processed using that form).
These 4 Users Gave Thanks to Don Cragun For This Post:
# 5  
Old 06-03-2019
Hi, Don Cragun
Thank you so much, i solved it with your help.

--- Post updated at 02:27 AM ---

Don Cragun,
i need your help more, i want to put one line on your suggestion.
is it possible?
# 6  
Old 06-03-2019
Quote:
Originally Posted by tomato00
Don Cragun,
i need your help more, i want to put one line on your suggestion.
is it possible?
I can put thousands of lines on my suggestion. Is there something in particular that you want the line that you put on my suggestion to do? Or should I just make something up for the fun of it? My crystal ball is a bit cloudy today and I'm not getting a clear view of what you might want it to do.
# 7  
Old 06-04-2019
hi,
i solved it, i have one the following.
Code:
#>cat test.txt | awk '/CREATE / {c = $0}/[from|FROM] .*@/ {print c;   print}' "$@"

Thank you.

Last edited by Don Cragun; 06-04-2019 at 01:13 AM.. Reason: Add CODE tags.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell script to pass the config file lines as variable on the respective called function on a script

I want to make a config file which contain all the paths. i want to read the config file line by line and pass as an argument on my below function. Replace all the path with reading config path line by line and pass in respective functions. how can i achieve that? Kindly guide. ... (6 Replies)
Discussion started by: sadique.manzar
6 Replies

2. Shell Programming and Scripting

What is the function of the following lines at the top of a shell script file: Directory and Script?

The file starts like this: Directory: <path to the script> Script: <script fife name> #!bin/ksh ##Comments <actual script> What is the use of the first two lines in the script? What if I save the file without them? What will be the effect? They are not comments. Im very new to this,... (4 Replies)
Discussion started by: remytom
4 Replies

3. Shell Programming and Scripting

Shell script to filter records in a zip file that contains matching columns from another file

Not sure if this is the correct forum for this question. I have two files. file1.zip, file2 Input: file1.zip col1, col2 , col3 a , b , 0:0:0:0:0:c436:9346:d40b x, y, 0:0:0:0:0:880:39f9:c9a7 m, n , 0:0:0:0:0:80c7:9161:fe00 file2.txt col1 c4:36:93:46:d4:0b... (1 Reply)
Discussion started by: anil.v
1 Replies

4. Shell Programming and Scripting

Filter all the lines with minimum specified length of words of a text file

Hi Can someone tell me which script will work best (in terms of speed and simplicity to write and run) for a large text file to filter all the lines with a minimum specified length of words ? A sample script with be definitely of great help !!! Thanks in advance. :) (4 Replies)
Discussion started by: my_Perl
4 Replies

5. Shell Programming and Scripting

Help with shell script - filter txt file full of ips

Hello again gentlemen. I would like to make a shell script to 'optimize' a plain text full of IPs. Let's suppose to have this text file: 1.192.63.253-1.192.63.253 1.0.234.46/32 1.1.128.0/17 1.116.0.0/14 1.177.1.157-1.177.1.157 1.23.22.19 1.192.61.0-1.192.61.99 8.6.6.6 I want to... (2 Replies)
Discussion started by: accolito
2 Replies

6. UNIX for Dummies Questions & Answers

Shell script to read lines in a text file and filter user data Shell Programming and Scripting

sxsaaas (3 Replies)
Discussion started by: VikrantD
3 Replies

7. Shell Programming and Scripting

Shell script to read lines in a text file and filter user data

hi all, I have this file with some user data. example: $cat myfile.txt FName|LName|Gender|Company|Branch|Bday|Salary|Age aaaa|bbbb|male|cccc|dddd|19900814|15000|20| eeee|asdg|male|gggg|ksgu|19911216||| aara|bdbm|male|kkkk|acke|19931018||23| asad|kfjg|male|kkkc|gkgg|19921213|14000|24|... (4 Replies)
Discussion started by: srimal
4 Replies

8. Shell Programming and Scripting

Filter out lines of a cvs from values from an other file

Hi there, I have a comma seperated file which looks like 16-Jun-08,KLM forwarder,,AMS,DXB,AMS,C,Y,G10,074-02580900,milestone failed - message not received,C,OK,,13/06/2008 00:00,KL427,13/06/2008 00:00,KL427,Rebooked,C,milestone failed - message not received,milestone failed - evented... (3 Replies)
Discussion started by: sickboy
3 Replies

9. Shell Programming and Scripting

how do I filter double lines from a txt file

Hi, I have a file with the following: access-list.txt router1 access-list 1 permit any any access-list 1 deny any any router2 access-list 2 permit any any access-list 2 deny any any router3 access-list 3 permit any any access-list 3 deny any any I want to hava an output that... (10 Replies)
Discussion started by: I-1
10 Replies

10. Shell Programming and Scripting

need help--script to filter specific lines from multiple txt files

Hi folks, - I have 800 txt files - those files are cisco router configs router1.txt router2.txt ... router800.txt I want to accomplish the following: - I want to have a seperate file with all the filenames that I want to process - I want a script that goes trough all those... (7 Replies)
Discussion started by: I-1
7 Replies
Login or Register to Ask a Question