Sponsored Content
Top Forums Shell Programming and Scripting help on awk---- need to assign the output of awk to a variable Post 302580688 by methyl on Friday 9th of December 2011 09:09:23 AM
Old 12-09-2011
@Nithz
In future posts, please post the current version of your script along with any matching error messages.
You are quite a long way adrift with syntax. Note that when assigning variables there is no space character either side of the equals sign.

This should get you past the syntax errors.

Code:
#!/bin/ksh
size=$(du -s | awk '{print $1}')
if [ ${size} -ge 112000 ]
then
        echo "${size} high"
fi

Now! I wonder where the number 112000 came from? The units of the output from "du -s" are in "512 byte blocks".
Using the unix in-line calculator "bc" I get a different value for the number of 512 byte chunks in a Gigabyte.
Code:
echo "(1024*1024*1024)/(512)"|bc
2097152

The units of "du -sk" are easier to work with. See the "man" page for "du".

Last edited by methyl; 12-09-2011 at 10:17 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

assign value to variable using AWK

Dear Friends I have text file as like below, AAAAA|BHBHBH|VERYSMART AAAAA| KKKKKK|GOOD BBBBBB|JJJJJJJ|VERYGOOD CCCCC|HJHJHJ|BETTER CCCCC|UUUUU|GOOD i need to split into seperate files based on column 1 like as below AAAAA.TXT contains -------------------- BHBHBH.VERYSMART... (4 Replies)
Discussion started by: HAA
4 Replies

2. Shell Programming and Scripting

assign values from awk output - help

Dear All, I have a command which gives the number of fields of each line of a comma-separated file. sthng like this : cat QDB_20071126_002.bad | awk -F"," '{ print NF }' I need to assign the first output and the last output of the above command to variables in a script. Need help to do... (4 Replies)
Discussion started by: KrishnaSaran
4 Replies

3. Shell Programming and Scripting

Assign o/p of awk to a variable

:confused: Hi UNIX gurus, I am facing a typical problem while assigining while assigining output of awk to a variable. I have a fixed length file say myinputfile.txt When I allow the value/output of an awk to be redirected to a file, it works fine. i.e. awk "/^.{232}$acctNum/ {... (8 Replies)
Discussion started by: c2b2
8 Replies

4. Shell Programming and Scripting

assign awk output to bash variable

greetings all, I am have a heck of a time trying to accomplish a very simple thing. I have an array of "shortname<spaces>id" created from a dscl output. I want to assign shortname=word1 and id=word2. I have tried shortname=$(${textArray} | awk '{print $1}') - and get 'awk : cannot open... (3 Replies)
Discussion started by: macnetdaemon
3 Replies

5. Shell Programming and Scripting

awk: assign variable with -v didn't work in awk filter

I want to filter 2nd column = 2 using awk $ cat t 1 2 2 4 $ VAR=2 #variable worked in print $ cat t | awk -v ID=$VAR ' { print ID}' 2 2 # but variable didn't work in awk filter $ cat t | awk -v ID=$VAR '$2~/ID/ { print $0}' (2 Replies)
Discussion started by: honglus
2 Replies

6. Shell Programming and Scripting

assign awk's variable to shell script's variable?

Dear All, we have a command output which looks like : Total 200 queues in 30000 Kbytes and we're going to get "200" and "30000" for further process. currently, i'm using : numA=echo $OUTPUT | awk '{print $2}' numB=echo $OUTPUT | awk '{print $5}' my question is : can I use just one... (4 Replies)
Discussion started by: tiger2000
4 Replies

7. Shell Programming and Scripting

using awk for setting variable but change the output of this variable within awk

Hi all, Hope someone can help me out here. I have this BASH script (see below) My problem lies with the variable path. The output of the command find will give me several fields. The 9th field is the path. I want to captured that and the I want to filter this to a specific level. The... (6 Replies)
Discussion started by: Cowardly
6 Replies

8. Shell Programming and Scripting

Assign a variable with awk

I launch 'netstat -a', if string 'ESTABLISHED' found, then VAR=1 #!/bin/bash VAR=0; netstat -a | awk '$6 ~ /ESTABLISHED/ {VAR=1}' I cannot find the right syntax. thanx guys! (3 Replies)
Discussion started by: arpagon
3 Replies

9. UNIX for Beginners Questions & Answers

How can I assign awk's variable to shell script's variable?

I have the following script, and I want to assign the output ($10 and $5) from awk to N and L: grdinfo data.grd | awk '{print $10,$5}'| read N L output from gridinfo data.grd is: data.grd 50 100 41 82 -2796 6944 0.016 0.016 3001 2461. where N and L is suppose to be 3001 and 100. I use... (8 Replies)
Discussion started by: geomarine
8 Replies

10. UNIX for Beginners Questions & Answers

How to assign a value to a variable in awk scripting?

Hi, I am trying to assign a value using below command and it is assigning the command to the variable not the output of the command? out_value="echo $0 | cut -c 9-11"; How can i assign the output to the variable instead of whole command? This is inside my awk script (7 Replies)
Discussion started by: bhagya123
7 Replies
DU(1)							    BSD General Commands Manual 						     DU(1)

NAME
du -- display disk usage statistics SYNOPSIS
du [-H | -L | -P] [-a | -d depth | -s] [-cghkmnrx] [file ...] DESCRIPTION
The du utility displays the file system block usage for each file argument and for each directory in the file hierarchy rooted in each direc- tory argument. If no file is specified, the block usage of the hierarchy rooted in the current directory is displayed. The options are as follows: -H Symbolic links on the command line are followed. (Symbolic links encountered in the tree traversal are not followed.) -L All symbolic links are followed. -P No symbolic links are followed. -a Display an entry for each file in the file hierarchy. -c Display the grand total after all the arguments have been processed. -d Display an entry files and directories depth directories deep. -g If the -g flag is specified, the number displayed is the number of gigabyte (1024*1024*1024 bytes) blocks. -h If the -h flag is specified, the numbers will be displayed in "human-readable" format. Use unit suffixes: B (Byte), K (Kilobyte), M (Megabyte), G (Gigabyte), T (Terabyte) and P (Petabyte). -k By default, du displays the number of blocks as returned by the stat(2) system call, i.e. 512-byte blocks. If the -k flag is speci- fied, the number displayed is the number of kilobyte (1024 bytes) blocks. Partial numbers of blocks are rounded up. -m If the -m flag is specified, the number displayed is the number of megabyte (1024*1024 bytes) blocks. -n Ignore files and directories with user "nodump" flag (UF_NODUMP) set. -r Generate warning messages about directories that cannot be read. This is the default behaviour. -s Display only the grand total for the specified files. -x Filesystem mount points are not traversed. du counts the storage used by symbolic links and not the files they reference unless the -H or -L option is specified. If either the -H or -L options are specified, storage used by any symbolic links which are followed is not counted or displayed. The -H, -L and -P options over- ride each other and the command's actions are determined by the last one specified. Files having multiple hard links are counted (and displayed) a single time per du execution. ENVIRONMENT
BLOCKSIZE If the environment variable BLOCKSIZE is set, and the -g, -h, -k, and -m options are not specified, the block counts will be dis- played in units of that size block. SEE ALSO
df(1), chflags(2), fts(3), getbsize(3), symlink(7), quot(8) HISTORY
A du command appeared in Version 6 AT&T UNIX. BSD
September 24, 2006 BSD
All times are GMT -4. The time now is 09:00 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy