Sponsored Content
Top Forums Shell Programming and Scripting nawk - Unable to use 2 variables for NR range Post 302424565 by ragz_82 on Tuesday 25th of May 2010 05:06:16 PM
Old 05-25-2010
nawk - Unable to use 2 variables for NR range

Hi,
I need to break an input file into multiple output files. The number of output files is decided by a maximum record count allowed for each file.

Hence I am using the nawk command to recursively retrieve a range of lines from an input file and write them to output files. But I am unable to use variables for the range to be provided against NR.

Code:
cat file.input.XYZ.dat | nawk -F\n '(NR>0 && NR<=10) {print $0}' | tee -a result_tmp.txt

The above works but I need to use $LOWER_LIMIT and $UPPER_LIMIT in the places of 0 and 10.

Please suggest.

Last edited by Scott; 05-25-2010 at 07:31 PM.. Reason: Code tags, please...
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

nawk and variables

Hi guy's Im trying to pass variables into nawk and then match them on a value within a record but it don't seem to be working. If i put in the dates i want to see then it works fine.. #!/usr/bin/ksh -x YEST=$(/usr/local/bin/perl -e... (8 Replies)
Discussion started by: plimpix
8 Replies

2. Shell Programming and Scripting

Assigning nawk output to variables

I do a lot of command line scripting to capture data from files or other command output. I've checked in a number of Unix and scripting books but for the life of me I can't find out how to asign field data from nawk output into variables that I can manipulate later. For example, reading a two... (6 Replies)
Discussion started by: steveje0711
6 Replies

3. Shell Programming and Scripting

nawk - Passing variables

Hi, I am passing the varibale using nawk -v to search the pattern from the file. But this variable is not accepting. I couldn't get the crrect output. Help me regarding..... nawk -v PGMNAME="$prog" ' { $0 ~ /PGMNAME/ { .................. ................. ... (3 Replies)
Discussion started by: sharif
3 Replies

4. Shell Programming and Scripting

I can't seem to pass variables properly into a nawk statement

Ok, So up front I'm going to say that I'm a very elementary scripter, and I tend to use tools I don't fully understand, but I shotgun at something until I can get it to work...that said, I can't for the life of me understand why I can't get this to go down the way I want it to. The goal: -to... (6 Replies)
Discussion started by: DeCoTwc
6 Replies

5. Shell Programming and Scripting

how to access values of awk/nawk variables outside the awk/nawk block?

i'm new to shell scripting and have a problem please help me in the script i have a nawk block which has a variable count nawk{ . . . count=count+1 print count } now i want to access the value of the count variable outside the awk block,like.. s=`expr count / m` (m is... (5 Replies)
Discussion started by: saniya
5 Replies

6. Shell Programming and Scripting

Passing the nawk variables to the shell

nawk '($1 ~ "1000") && ($1 ~ "5665" ) { sub ($6,"89");flag =1;print }' old.txt >> new.txt I want to set a flag in awk , if the both conditions are met. I want to pass this flag to shell Can anyone please help me on this (1 Reply)
Discussion started by: prav076
1 Replies

7. Shell Programming and Scripting

Can I use nawk -v with two or more variables?

Hi, Is it possible in awk/nawk to pass two or more variables in the -v flag? That is: X=1 Y=2 nawk -v X=$X Y=$Y..... Thanks in advance. (7 Replies)
Discussion started by: daytripper1021
7 Replies

8. Shell Programming and Scripting

nawk variables

Hi - The following nawk is not working and trying to understand why! nawk -v t="internal_order" '/SAP_RM_ADMIN_SCHEMA/ && ("" toupper(t)) || /SAP_RM_ADMIN_SCHEMA/ && ("" tolower(t))' PBFD100.ksh My intention is to retrieve the line containing SAP_RM_ADMIN_SCHEMA.internal_order but its just not... (6 Replies)
Discussion started by: anduzzi
6 Replies

9. Shell Programming and Scripting

Two shell variables using nawk

How do you use two shell variables in awk? I am using Solaris 10 and don't have GNU products installed. File (transportation.txt) contents: car make boat model airplane landing snowmobile track bicycle helmet sled housing Thanks to this forum this code works (prints everything from the... (4 Replies)
Discussion started by: thibodc
4 Replies

10. Shell Programming and Scripting

Multiple bash variables passed into nawk

I have a file that has 2 fields called b_file: 11977 DAR.V3.20150209.1.CSV 3295 DAR.V3.20150209.1.CSV 1721 DAR.V2.20150210.1.CSV I need to search a sftplog using the field 1, but want to maintain the relationship between field 1 and 2. I am passing field 1 as a parameter in a bash loop. ... (14 Replies)
Discussion started by: smenago
14 Replies
wc(1)							      General Commands Manual							     wc(1)

NAME
wc - Counts the lines, words, characters, and bytes in a file SYNOPSIS
wc [-c | -m] [-lw] [file...] The wc command counts the lines, words, and characters or bytes in a file, or in the standard input if you do not specify any files, and writes the results to standard output. It also keeps a total count for all named files. STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: wc: XCU5.0 Refer to the standards(5) reference page for more information about industry standards and associated tags. OPTIONS
Counts bytes in the input. Counts lines in the input. Counts characters in the input. Counts words in the input. OPERANDS
Specifies the pathname of the input file. If this operand is omitted, standard input is used. DESCRIPTION
A word is defined as a string of characters delimited by white space as defined in the X/Open Base Definitions for XCU4. The wc command counts lines, words, and bytes by default. Use the appropriate options to limit wc output. Specifying wc without options is the equivalent of specifying wc -lwc. If any options are specified, only the requested information is output. The order in which counts appear in the output line is lines, words, bytes. If an option is omitted, then the corresponding field in the output is omitted. If the -m option is used, then character counts replace byte counts. When you specify one or more files, wc displays the names of the files along with the counts. If standard input is used, then no file name is displayed. EXIT STATUS
The following exit values are returned: Successful completion. An error occurred. EXAMPLES
To display the number of lines, words, and bytes in the file text, enter: wc text This results in the following output: 27 185 722 text The numbers 27, 185, and 722 are the number of lines, words, and bytes, respectively, in the file text. To display only one or two of the three counts include the appropriate options. For example, the following command displays only line and byte counts: wc -cl text 27 722 text To count lines, words, and bytes in more than one file, use wc with more than one input file or with a file name pat- tern. For example, the following command can be issued in a directory containing the files text, text1, and text2: wc -l text* 27 text 112 text1 5 text2 144 total The numbers 27, 112, and 5 are the numbers of lines in the files text, text1, and text2, respectively, and 144 is the total number of lines in the three files. The file name is always appended to the output. To obtain a pure number for things like reporting purposes, pipe all input to the wc command using cat. For example, the following command will report the total count of characters in all files in a directory. echo There are `cat *.c | wc -c` characters in *.c files There are 1869 characters in *.c files ENVIRONMENT VARIABLES
The following environment variables affect the execution of wc: Provides a default value for the internationalization variables that are unset or null. If LANG is unset or null, the corresponding value from the default locale is used. If any of the internationalization vari- ables contain an invalid setting, the utility behaves as if none of the variables had been defined. If set to a non-empty string value, overrides the values of all the other internationalization variables. Determines the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multibyte characters in arguments and input files) and which characters are defined as white space characters. Determines the locale for the format and contents of diagnostic messages written to standard error and informative messages written to standard output. Determines the location of message catalogues for the processing of LC_MESSAGES. SEE ALSO
Commands: cksum(1), ls(1) Standards: standards(5) wc(1)
All times are GMT -4. The time now is 10:24 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy