How to use shell command in awk ?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting How to use shell command in awk ?
# 1  
Old 03-01-2009
How to use shell command in awk ?

Hello,
i was just wondering how can i use shell command in awk script file? say suppose i want to print the date at the top of the report i generate using awk how can i do that? Thanks in advance! Smilie
# 2  
Old 03-01-2009
Possibilities:

Code:
awk 'BEGIN{"date" | getline d; print d; close("date")}
{# Other commands....}
' file

Or:

Code:
awk -v d="$(date)" 'BEGIN{print d}
{# Other commands....}
' file

Or:

Code:
awk 'BEGIN{system("date")}
{# Other commands....}
' file

Regards
# 3  
Old 03-01-2009
thanks Franklin52,
the last one is the easiest for me haha! and can you please tell me how can i do the following in awk script file?

Code:
 for i in `ls`
 do
      echo $i
 done

# 4  
Old 03-01-2009
also why is this not working?

Code:
BEGIN{
	system("date \"+%H-%M\"")|getline d
}
{
	
}

# 5  
Old 03-01-2009
Quote:
Originally Posted by salman4u
thanks Franklin52,
the last one is the easiest for me haha! and can you please tell me how can i do the following in awk script file?

Code:
 for i in `ls`
 do
      echo $i
 done

Do you mean something like this?

Code:
awk 'BEGIN{
while ("ls" | getline var){
  #Do something with var...}
}
{...}'

Quote:
also why is this not working?
Code:
BEGIN{
system("date \"+%H-%M\"")|getline d
}
{

}
The system command returns the exit status of the command that was executed not the output of the command.

Regards
# 6  
Old 03-02-2009
Thanks again Franklin52 Smilie
now things getting into my mind.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell Script with following awk command pls help

Hi I want to create a shell script with the following awk command & also get the filenames in output. awk '/<catetcsecuretty0>/ {p=1} /<catvarlogmessages0>/ {p=0} p' *.xml As there will be multiple outputs related to many xml files I cannot identify which output belongs to which file ... (5 Replies)
Discussion started by: sharp488
5 Replies

2. Shell Programming and Scripting

awk command not getting executed in shell script

I am able to execute awk command from shell prompt. but the same command is not getting executed when written and run in a bash script the command from bash cmd prompt. awk '/world/{for (i=2; i<NF; i++) printf $i " "; print $NF}1' myfile >tmp$$ ; mv tmp$$ myfile file: # hello world my... (4 Replies)
Discussion started by: ashima jain
4 Replies

3. Shell Programming and Scripting

Unable to pass shell script variable to awk command in same shell script

I have a shell script (.sh) and I want to pass a parameter value to the awk command but I am getting exception, please assist. diff=$1$2.diff id=$2 new=new_$diff echo "My id is $1" echo "I want to sync for user account $id" ##awk command I am using is as below cat $diff | awk... (2 Replies)
Discussion started by: Ashunayak
2 Replies

4. Shell Programming and Scripting

If else condition inside for loop of awk command in UNIX shell scripting

Hi , Please excuse me for opening a new thread i am unable to find out the syntax error in my if else condition inside for loop in awk command , my actual aim is to print formatted html td tag when if condition (True) having string as "failed", could anyone please advise what is the right... (2 Replies)
Discussion started by: karthikram
2 Replies

5. Shell Programming and Scripting

Shell script with awk command for counting in a file

Hi, I hope you can help me with the awk command in shell scripting. I want to do the following, but it doesn't work. for i in $REF1 $REF2 $REF3; do awk '{if($n>=0 && $n<=50000){count+=1}} END{print count}' ${DIR}${i} >${DIR}${i}_count.txt done REF1 to REF3 are only variables for .txt... (1 Reply)
Discussion started by: y.g.
1 Replies

6. Shell Programming and Scripting

use shell variable in awk command

Trying to do something like this ls -lrt | awk '$9=="test5"' -rw-r--r-- 1 lrmq db2iadm1 381 Sep 20 21:56 test5 But now, I need to give a variable in place of test5. For example let's define x as test5 x=test5 ls -lrt | awk '$9=="$x"' This doesn't seem to be working. It doesn't take the... (4 Replies)
Discussion started by: blazer789
4 Replies

7. UNIX for Dummies Questions & Answers

Passing Shell Variables to an awk command

Hello, I have two files File1 & File2. File1 76 135 136 200 250 345 .... File2 1 24 1 35 1 36 1 72 .... I want to get all the values form File2 corresponding to the range in File 1 and feed it to a program. Is the code below right? Can I pass shell variables to awk in this... (2 Replies)
Discussion started by: Gussifinknottle
2 Replies

8. Shell Programming and Scripting

awk command in script gives error while same awk command at prompt runs fine: Why?

Hello all, Here is what my bash script does: sums number columns, saves the tot in new column, outputs if tot >= threshold val: > cat getnon0file.sh #!/bin/bash this="getnon0file.sh" USAGE=$this" InFile="xyz.38" Min="0.05" # awk '{sum=0; for(n=2; n<=NF; n++){sum+=$n};... (4 Replies)
Discussion started by: catalys
4 Replies

9. Shell Programming and Scripting

shell command in AWK

Hi experts, Sorry if it sounds basic question. I am trying to delete all folders except a particular and I have written the following. But its not deleting the folder. Could you tell me whats wrong? folders are: 1 2 3 4 5 6 ls -l | awk '{ if ($9 != 4) {system(/bin/rmdir $9);print... (5 Replies)
Discussion started by: amitrajvarma
5 Replies

10. Shell Programming and Scripting

awk command not working from the shell script

Hi, When i run the below command i am able to get the output. awk '/BEGIN DSSUBRECORD/{c=3;next}c-->0' abc.txt | awk '/END DSSUBRECORD/{exit}{print}' | awk '/Owner/{exit}{print}' | awk '{n2=n1;n1=n;n=$0;if(NR%3==0){printf"%s,%s,%s\n",n2,n1,n}}' Output: Name "file_name", ... (5 Replies)
Discussion started by: onesuri
5 Replies
Login or Register to Ask a Question