Sponsored Content
Homework and Emergencies Homework & Coursework Questions Shell Script: Sorting by column using grep/awk Post 302781395 by Don Cragun on Saturday 16th of March 2013 11:46:07 AM
Old 03-16-2013
Quote:
Originally Posted by tburns517
I need help really quick, this is due in an hour. Here is my new code, I just need to figure out how to get the user input to do the correct command, which is why I left the "if choice" blank...or should it be "if $choice" ?

read -p "How would you like the file to be sorted?
1) Alphabetically by name
2) By Land Area
3) By Population
Enter number choice here: " choice
read choice

if choice
then
awk '{ print $2, $3, $4 }' fifty_states.txt > states_alpha.txt
sort states_alpha.txt
fi

if choice
then
awk '{ print $2, $3, $4 }' fifty_states.txt > states_land.txt
sort -k +1 states_land.txt
fi

if choice
then
awk '{ print $2, $4, $3 }' fifty_states.txt > states_pop.txt
sort -k +1 states_pop.txt
fi
We are not going to do your homework for you.
I suggest again that you look at the man page for the test command so you can craft your if statements to look something like:
Code:
if test "$choice" some condition check

or
Code:
if [ "$choice" some condition check ]

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

grep, awk, typeset in a shell script..

For e.g I have a file named "relation" which has three coloums i.e JOHN MARY JACK PETE ALISIA JONNY TONY JACKIE VICTOR If I do grep -w 'JOHN' relation | awk '{print""$1" is husband of "$2" & father of "$3""}' It gives out JOHN i husband of MARY & father of JACK (which is desired... (7 Replies)
Discussion started by: nick_25
7 Replies

2. Shell Programming and Scripting

Shell script / Grep / Awk to variable and Loop

Hi, I have a text file with data in that I wish to extract, assign to a variable and process through a loop. Kind of the process that I am after: 1: Grep the text file for the values. Currently using: cat /root/test.txt | grep TESTING= | awk -F"=" '{ a = $2 } {print a}' | sort -u ... (0 Replies)
Discussion started by: Spoonless
0 Replies

3. Shell Programming and Scripting

AWK/GREP sorting help

hi everyone, I am kind of new to this forum. I need help in sorting this data out accordingly, I am actually doing a traceroute application and wants my AS path displayed in front of my address like this; 192.168.1.1 AS28513 AS65534 AS5089 AS5089 .... till the last AS number and if possible sort... (8 Replies)
Discussion started by: sam127
8 Replies

4. Shell Programming and Scripting

grep/awk column or variable?

Hi, I'm running via PuTTY, in a BASH shell to do my work. I'm running calculations where steps are reported like this every 100 steps: NSTEP = 249900 TIME(PS) = 249.900 TEMP(K) = 299.94 PRESS = 21.1 Etot = -12912.5557 EKtot = 4996.8780 EPtot = -17909.4336 ... (6 Replies)
Discussion started by: Oriksagtaria
6 Replies

5. Shell Programming and Scripting

AWK script to create max value of 3rd column, grouping by first column

Hi, I need an awk script (or whatever shell-construct) that would take data like below and get the max value of 3 column, when grouping by the 1st column. clientname,day-of-month,max-users ----------------------------------- client1,20120610,5 client2,20120610,2 client3,20120610,7... (3 Replies)
Discussion started by: ckmehta
3 Replies

6. UNIX for Dummies Questions & Answers

Problem with sorting in shell script

Hi, I have the following list: 42A 42AA 42B 42BB 42AAA 42BBB 49A 49AA 49B 49AAA 49BB I need it to be sorted as following: 42A 42B (2 Replies)
Discussion started by: sairamtejaswi
2 Replies

7. Shell Programming and Scripting

Grep/awk part of info of a column

I have a question that I am at a loss to solve. I have 3 column tab-separated data, such as: abs nmod+n+n-commitment-n 349.200023 abs nmod+n+n-a-commitment-n 333.306429 abs into+ns-j+vn-pass-rb-divide-v 295.57316 abs nmod+n+ns-commitment-n 182.085018 abs nmod+n+n-pledge-n ... (2 Replies)
Discussion started by: owwow14
2 Replies

8. Shell Programming and Scripting

How to awk or grep the last column in file when date on column contains spaces?

Hi have a large spreadsheet which has 4 columns APM00111803814 server_2 96085 Corp IT Desktop and Apps APM00111803814 server_2 96085 Corp IT Desktop and Apps APM00111803814 server_2 96034 Storage Mgmt Team APM00111803814 server_2 96152 GWP... (6 Replies)
Discussion started by: kieranfoley
6 Replies

9. Shell Programming and Scripting

awk script to append suffix to column when column has duplicated values

Please help me to get required output for both scenario 1 and scenario 2 and need separate code for both scenario 1 and scenario 2 Scenario 1 i need to do below changes only when column1 is CR and column3 has duplicates rows/values. This inputfile can contain 100 of this duplicated rows of... (1 Reply)
Discussion started by: as7951
1 Replies

10. Shell Programming and Scripting

Need awk or Shell script to compare Column-1 of two different CSV files and print if column-1 matche

Example: I have files in below format file 1: zxc,133,joe@example.com cst,222,xyz@example1.com File 2 Contains: hxd hcd jws zxc cst File 1 has 50000 lines and file 2 has around 30000 lines : Expected Output has to be : hxd hcd jws (5 Replies)
Discussion started by: TestPractice
5 Replies
ppd_check_option_is_marked(3)				     Library Functions Manual				     ppd_check_option_is_marked(3)

NAME
ppd_check_option_is_marked, ppd_mark_defaults, ppd_mark_option - a set of functions for determining the current status of PPD options and selecting them. SYNOPSIS
#include <ppd.h> gboolean ppd_check_option_is_marked (PpdFile *ppd, const char *keyword, const char *option); gint ppd_mark_option(PpdFile *ppd, const char *option, const char *choice); void ppd_mark_defaults (PpdFile *ppd); DESCRIPTION
These three functions are used to query the marked status of an option in a PPD file as well as forcing an option to be selected. ppd_check_option_is_marked(PpdFile *ppd, const char *option, const char *choice); ppd_check_option_is_marked() accepts three parameters as input. The first is the PpdFile pointer to a PPD file obtained by calling one of the ppd_load(3) functions. The second parameter is the option of the keyword name. The final input parameter is the actual choice name. ppd_mark_option(PpdFile *ppd, const char *option, const char *choice); ppd_mark_option allows the programmer to manually select an option in a PPD file. The parameters are the a valid PpdFile pointer (see ppd_file_new(3)), the option name, and the choice name. void ppd_mark_defaults (PpdFile *ppd); ppd_mark_defaults() resets all the default options in the PPD file specified by the PpdFile pointer (see ppd_file_new(3)). RETURN VALUE
ppd_check_option_is_marked() FALSE if the option is not currently selected and TRUE is it marked ppd_mark_option() Always returns 0. The only means of determining whether or not the function succeeded is to make a subsequent call to ppd_check_option_is_marked() on the same option. SEE ALSO
ppd_file_new(3), ppd_emit_to_file(3), ppd_file_free(3), ppd_find_choice(3), ppd_get_num_conflicts(3), ppd_get_page_length(3) AUTHOR
This man page was written by Gerald Carter <gcarter@valinux.com>. It was updated by Mark Fasheh <mfasheh@valinux.com> to reflect changes in libppd 0.5. Some of the code was originally part of the Common UNIX Printing System (CUPS). ppd_check_option_is_marked(3)
All times are GMT -4. The time now is 03:22 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy