Sponsored Content
Top Forums Shell Programming and Scripting Select only top "N" records based on column value Post 302469878 by asandy1234 on Monday 8th of November 2010 01:01:45 PM
Old 11-08-2010
Quote:
Originally Posted by radoulov
No,
would you want the script to display the above as select statement?

You could use something like this:

Code:
awk -F\" '
count[$4]++ < n {
  if ($6 ~ /^(SQL|SELECT)|select/)
    $6 = $6 ~ /^SQL/ ? "SQL" : "SELECT"
  else 
    $6 = "NULL"
  print 
  }' OFS=\" n=2 infile

Or, if you want to capture the patterns sql and select in any position in the sixth field case-insensitively with GNU awk:

Code:
awk -F\" '
count[$4]++ < n {
  if ($6 ~ /(sql|select)/)
    $6 = $6 ~ /^sql/ ? "SQL" : "SELECT"
  else 
    $6 = "NULL"
  print 
  }' OFS=\" n=2 IGNORECASE=1 infile

The IGNORECASE variable is a GNU awk extension!
Again and again you are proving that you are a genius. I really appreciate your valueble contribution.

Thanks once again...
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Commands on Digital Unix equivalent to for "top" and "sar" on other Unix flavour

Hi, We have a DEC Alpha 4100 Server with OSF1 Digital Unix 4.0. Can any one tell me, if there are any commands on this Unix which are equivalent to "top" and "sar" on HP-UX or Sun Solaris ? I am particularly interested in knowing the CPU Load, what process is running on which CPU, etc. ... (1 Reply)
Discussion started by: sameerdes
1 Replies

2. UNIX for Dummies Questions & Answers

Select records based on search criteria on first column

Hi All, I need to select only those records having a non zero record in the first column of a comma delimited file. Suppose my input file is having data like: "0","01/08/2005 07:11:15",1,1,"Created",,"01/08/2005" "0","01/08/2005 07:12:40",1,1,"Created",,"01/08/2005"... (2 Replies)
Discussion started by: shashi_kiran_v
2 Replies

3. Debian

Debian: doubt in "top" %CPU and "sar" output

Hi All, I am running my application on a dual cpu debian linux 3.0 (2.4.19 kernel). For my application: <sar -U ALL> CPU %user %nice %system %idle ... 10:58:04 0 153.10 0.00 38.76 0.00 10:58:04 1 3.88 0.00 4.26 ... (0 Replies)
Discussion started by: jaduks
0 Replies

4. AIX

AIX 5.3 - Discrepancies between "top" and "vmstat"

Can someone explain the differences I'm seeing below in TOP and VMSTAT commands on my AIX 5.3 server? Thanks! CPUs: 4; load averages: 0.86, 0.97, 0.97 18:09:26 926 processes: 4 stopped, 922 running CPU states: 78.4% idle, 8.5% user, 12.6% kernel, 0.3% wait Memory: 23680M Total.... (1 Reply)
Discussion started by: troym72
1 Replies

5. Shell Programming and Scripting

"Join" or "Merge" more than 2 files into single output based on common key (column)

Hi All, I have working (Perl) code to combine 2 input files into a single output file using the join function that works to a point, but has the following limitations: 1. I am restrained to 2 input files only. 2. Only the "matched" fields are written out to the "matched" output file and... (1 Reply)
Discussion started by: Katabatic
1 Replies

6. Shell Programming and Scripting

AWK for multiple line records RS="^" FS="#"

I have to pull multiple line records with ^ as the record separator(RS)... # should be my field separator (FS)... Sample record is: ^-60#ORA-00060: deadlock detected while waiting for resource ORA-00001: unique constraint (SARADM.TCKNUM_PK) violated#PROC:AVAILABLE_FOR_GETNXTTIC#02/27/2012... (7 Replies)
Discussion started by: Vidhyaprakash
7 Replies

7. Shell Programming and Scripting

Substituting comma "," for dot "." in a specific column when comma"," is a delimiter

Hi, I'm dealing with an issue and losing a lot of hours figuring out how i would solve this. I have an input file which looks like this: ('BLABLA +200-GRS','Serviço ','TarifaçãoServiço','wap.bla.us.0000000121',2985,0,55,' de conversão em escada','Dia','Domingos') ('BLABLA +200-GRR','Serviço... (6 Replies)
Discussion started by: poliver
6 Replies

8. Shell Programming and Scripting

awk based script to print the "mode(statistics term)" for each column in a data file

Hi All, Thanks all for the continued support so far. Today, I need to find the most occurring string/number(also called mode in statistics terminology) for each column in a data file (.csv type). For one column of data(1.txt) like below Sample 1 2 2 3 4 1 1 1 2 I can find the mode... (6 Replies)
Discussion started by: ks_reddy
6 Replies

9. Shell Programming and Scripting

Choosing between repeated entries based on the "absolute values" of a column

Hello, I was looking for a way to select between the repeated entries (column1) based on the values of absolute values of column 3 (larger value). For example if the same gene id has FC value -2 and 1, I should get the output as -2. Kindly help. GeneID Description FC ... (2 Replies)
Discussion started by: Sanchari
2 Replies

10. UNIX for Beginners Questions & Answers

Extract delta records using with "comm" and "sort" commands combination

Hi All, I have 2 pipe delimited files viz., file_old and file_new. I'm trying to compare these 2 files, and extract all the different rows between them into a new_file. comm -3 < sort file_old < sort file_new > new_file I am getting the below error: -ksh: sort: cannot open But if I do... (7 Replies)
Discussion started by: njny
7 Replies
newtask(1)							   User Commands							newtask(1)

NAME
newtask - create new task and optionally change project SYNOPSIS
newtask [-p project] [-v] [-c pid | [-Fl] [command...]] DESCRIPTION
The newtask command executes the user's default shell or a specified command, placing the executed command in a new task owned by the spec- ified project. The user's default shell is the one specified in the passwd database, and is determined using getpwnam(). Alternatively, newtask can be used to cause an already running process to enter a newly created task. A project for the new task can also be specified in this form of the command. This might be desirable for processes that are mission critical and cannot be restarted in order to put them into a new project. In the case that extended accounting is active, the newtask command can additionally cause the creation of a task accounting record marking the completion of the preceding system task. OPTIONS
The following options are supported: -c pid Cause a running process to enter a newly created task. A project for the new task can also be specified using the -p option. The invoking user must either own the process or have super-user privileges. If the project is being changed, the process owner must be a member of the specified project, or the invoking user must have super-user privileges. When the project is changed for a running process, its pool binding as well as resource controls are modi- fied to match the configuration of the new project. Controls not explicitly specified in the project entry is preserved. This option is incompatible with the -F and -l options. -F Creates a finalized task, within which further newtask or settaskid(2) invocations would fail. Finalized tasks can be useful at some sites for simplifying the attribution of resource consumption. -l Changes the environment to what would be expected if the user actually logged in again as a member of the new project. -p Changes the project ID of the new task to that associated with the given project name. The invoking user must be a valid member of the requested project, or must have super-user privileges, for the command to succeed. If no project name is specified, the new task is started in the invoking user's current project. -v Verbose: displays the system task id as the new system task is begun. OPERANDS
The following operands are supported: project The project to which resource usage by the created task should be charged. The requested project must be defined in the project databases defined in nsswitch.conf(4). command The command to be executed as the new task. If no command is given, the user's login shell is invoked. (If the login shell is not available, /bin/sh is invoked.) EXAMPLES
Example 1 Creating a New Shell The following example creates a new shell in the canada project, displaying the task id: example$ id -p uid=565(gh) gid=10(staff) projid=10(default) example$ newtask -v -p canada 38 example$ id -p uid=565(gh) gid=10(staff) projid=82(canada) Example 2 Running the date Command The following example runs the date command in the russia project: example$ newtask -p russia date Tue Aug 31 11:12:10 PDT 1999 Example 3 Changing the Project of an Existing Process The following example changes the project of the existing process with a pid of 9999 to russia: example$ newtask -c 9999 -p russia EXIT STATUS
The following exit values are returned: 0 Successful execution. 1 A fatal error occurred during execution. 2 Invalid command line options were specified. FILES
/etc/project Local database containing valid project definitions for this machine. /proc/pid/* Process information and control files. ATTRIBUTES
See attributes(5) for a description of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWcsu | +-----------------------------+-----------------------------+ SEE ALSO
proc(1), id(1M), poolbind(1M), execvp(2), setrctl(2), settaskid(2), setproject(3PROJECT), nsswitch.conf(4), proc(4), project(4), attributes(5) SunOS 5.11 17 Nov 2004 newtask(1)
All times are GMT -4. The time now is 05:22 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy