Select answers from multiple questions using shell script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Select answers from multiple questions using shell script
# 1  
Old 08-24-2014
Select answers from multiple questions using shell script

I have a text file in this format

Code:
Some lines....
Question no: 1

The question?

A. Answer 1
B. Answer 2
C. Answer 3
D. Answer 4

Answer:B
Some lines....

Question no: 2

The question? (choose 2)

A. Answer 1
B. Answer 2
C. Answer 3
D. Answer 4

Answer:C,D
Some lines....

Question no: 3

The question?

A. Answer 1
B. Answer 2
C. Answer 3
D. Answer 4
E. Answer 5

Answer:A
Some lines....

and so on..

There can be 3 correct answers and there could be 5 answers to choose from. The lines of the answers can also be multiple lines. What I wanted to do is to extract all correct answers like this (based on example above):

Code:
Question no: 1
B. Answer 2

Question no: 2
C. Answer 3
D. Answer 4

Question no: 3
A. Answer 1

How can I do this using shell script maybe...awk?

Thanks
# 2  
Old 08-24-2014
Try:
Code:
awk -F'[.,:]' '           # Use dot, command and colon as fields separator
  /^[A-E]\./ {            # Store the choices in array A with index the first field (letter A-E)
    i=$1
    $1=x
    A[i]=$0
  }
  /^Answer/ {             # If line starts with "Answer" then print the valid choices
    for(i=2; i<=NF; i++)
      print $i"." A[$i]
    print x               # Print an empty line
  }
  /^Question/             # If line starts with "Question" then print the question
' file


Last edited by Scrutinizer; 08-24-2014 at 07:05 AM..
This User Gave Thanks to Scrutinizer For This Post:
# 3  
Old 08-24-2014
Thank you Scrutinizer. It works.

It just that in the actual file, the format is really like this:

Code:
The question?

A. aaaaaa
B. bbbbb
C. ccccc
D. ddddddd

There is no word "answer" after the letter so when I run your script on the actual file, the first answer is showing the letter only. How can I fix this?

Thanks
# 4  
Old 08-24-2014
My suggestion is not relying on the word answer after the letter, so I don't understand what you mean. Can you provide a better sample?
# 5  
Old 08-24-2014
to be clearer the output is this:

Code:
QUESTION NO: 89
 B.

QUESTION NO: 90
 A.
B.  bbbbbbbbbbbb
E.  eeeeeeeeeeeeeeeee

QUESTION NO: 97
 B.

# 6  
Old 08-24-2014
And what is the input that should lead to that output?
# 7  
Old 08-24-2014
Here you go:

Code:
Some lines......
QUESTION NO: 89

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx?

A. 0
B. 1
C. 4
D. 8

Answer: B
Explanation:

QUESTION NO: 90

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx?


A. aaaaaaaaaaaa
B. bbbbbbbbbbbb
C. ccccccccccccc
D. dddddddddd
E. eeeeeeeeeeeeeeeee

Answer: A,B,E
Explanation:

QUESTION NO: 97

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq?

A. aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
A. aaaaaaaaaaaa
B. bbbbbbbbbbbb
C. ccccccccccccc
D. dddddddddd
E. eeeeeeeeeeeeeeeee

Answer: B
Explanation:

Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. What is on Your Mind?

Answers to Recently Asked Questions about UNIX.COM

Here are some answers to some of the recent questions I have received about UNIX.COM. So, I thought I would take time to answer them here in this post: Is it expected that the original poster "thank" everyone who responds to his / her discussion thread? It is always a good practice in all... (7 Replies)
Discussion started by: Neo
7 Replies

2. UNIX for Beginners Questions & Answers

Answers for few objective questions.

Hi Unix geniuses, I need your help for the answers of few objective Q&A. i dont know if my answers are correct or not. So i really need your help to provide the answers which will help me in unix programming. (1 Reply)
Discussion started by: Vivekit82
1 Replies

3. Shell Programming and Scripting

Bash script to give multiple choices and a varying number of answers

Hello everybody, I use `case' quite a lot but , excellent as it is , it only gives one final result ; can anyone suggest a way whereas , say long lists of choices are given and I , or a user could select either one two or any number of results to be echoed . many thanks in... (3 Replies)
Discussion started by: V686
3 Replies

4. UNIX for Advanced & Expert Users

Interview questions and answers on HP Unix administration

Hi, Can some body help me to get Interview questions and answers on HP Unix administration? Thanks Krsnadasa (1 Reply)
Discussion started by: krsnadasa
1 Replies

5. Post Here to Contact Site Administrators and Moderators

Eric's Questions and Answers Blog

I hope this is ok so I will ask if I may use this thread to ask questions about programming. May I use this thread to ask questions and answer questions? If the answer is yes, this is a thread made for minimizing the amount of threads I post to ask questions about programming. Please feel... (3 Replies)
Discussion started by: Errigour
3 Replies

6. UNIX for Dummies Questions & Answers

Homework questions, book is lacking answers?

Hey you guys, There's a couple questions I cannot find the answers to anywhere in this book for my Operating Systems class, hopefully you guys could help. I believe we are in the Bourne shell. 1. Match each description to the appropriate type of variable Used in shell programs ... (7 Replies)
Discussion started by: KyleBucket
7 Replies

7. Solaris

Please give answers for this interview questions

I was not able to get answers for these interview questions. It will be appreciable and useful if any one answers this questions. (5 Replies)
Discussion started by: Sesha
5 Replies

8. Solaris

solaris 10 OS administration interview questions and answers

Hello, I am new to this forum and I am preparing for interview .Kindly can anybody send me Solaris 10 OS administration interview questions and answers (2 Replies)
Discussion started by: meet2muneer
2 Replies

9. Solaris

expecting answers for these questions?

hi all plese clarify me in the following area. 1. What is the default NFS version in solaris 5.10. If it is 3, then why it asks me to specify "-o vers=3" keyword while i am mounting a share from a RHEL 5.1 Server? 2. Can someone give the link to download packages for accessing "ntfs"... (4 Replies)
Discussion started by: kingston
4 Replies
Login or Register to Ask a Question