/bin/rmdir needs to be enclosed by double quotes and leave a blank between the closing double quote and the command itself like:
Code:
ls -l | awk '{ if ($9 != 4) {system("/bin/rmdir " $9);print "deleted",$9;}}'
^ ^^
You are not omitting the line with "total" so you will get ugly output. This can be changed if you use
Code:
ls -1
instead of
Code:
ls -l
Also you can leave out the closing separator ";" after the last print since there is nothing more to delimit. Also if() is not needed since awk has testing built in like
Code:
ls -1| awk '$0 != "4" {system("/bin/rmdir " $0);print "deleted",$0}'
Last edited by zaxxon; 06-15-2010 at 02:21 AM..
Reason: added comments
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! :) (5 Replies)
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)
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)
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)
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)
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)
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)
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)
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)
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
LEARN ABOUT OSF1
folders
folders(1) General Commands Manual folders(1)NAME
folders - list folders and contents (only available within the message handling system, mh)
SYNOPSIS
folders [+folder] [msg] [options]
OPTIONS
Lists only the name of folders, with no additional information. This is faster because the folders need not be read. Prints a list of the
valid options to this command. Lists the contents of the folder-stack. No +folder argument is allowed with this option. Re-numbers mes-
sages in the folders. Messages are re-numbered sequentially, and any gaps in the numbering are removed. The default operation is -nopack,
which does not change the numbering in the folder. Discards the top of the folder-stack, after setting the current folder to that value.
No +folder argument is allowed with this option. This corresponds to the popd operation in the C-shell; see csh(1). The -push and -pop
options are mutually exclusive: the last occurrence of either one overrides any previous occurrence of the other. Pushes the current
folder onto the folder-stack, and makes the +folder argument into the current folder. If +folder is not given, the current folder and the
top of the folder-stack are exchanged. This corresponds to the pushd operation in the C-shell; see csh(1). The -push switch and the -pop
switch are mutually exclusive: the last occurrence of either one overrides any previous occurrence of the other. Lists folders recur-
sively. Information on each folder is displayed, followed by information on any sub-folders which it contains. Displays only the total
number of messages and folders in your Mail directory. This option does not print any information about individual folders. It can be sup-
pressed using the -nototal option.
The defaults for folders are:
+folder defaults to all msg defaults to none -nofast -noheader -nototal -nopack -norecurse
DESCRIPTION
The folders command displays the names of your folders and the number of messages that they each contain.
The folders command displays a list of all the folders in your Mail directory. The folders are sorted alphabetically, each on its own line.
This is illustrated in the following example: Folder # of messages ( range ); cur msg (other files)
V2.3 has 3 messages ( 1- 3).
adrian has 20 messages ( 1- 20); cur= 2.
brian has 16 messages ( 1- 16).
chris has 12 messages ( 1- 12).
copylog has 242 messages ( 1- 242); cur= 225.
inbox+ has 73 messages ( 1- 127); cur= 127.
int has 4 messages ( 1- 4); cur= 2 (others).
jack has 17 messages ( 1- 17); cur= 17.
TOTAL= 387 messages in 8 folders.
The plus sign (+) after inbox indicates that it is the current folder. The information about the int folder includes the term (others).
This indicates that the folder int contains files which are not messages. These files may be either sub-folders, or files that do not
belong under the MH file naming scheme.
The folders command is identical to the effect of using the -all option to the folder command.
If you use folders with the +folder argument, it will display all the subfolders within the named folder. as shown in the following exam-
ple:
% folders +test Folder # of messages ( range ); cur msg (other files) test+ has 18 messages ( 1- 18);
(others). test/testone has 1 message ( 1- 1). test/testtwo has no messages.
TOTAL= 19 messages in 3 folders.
See refile(1) for more details of sub-folders.
RESTRICTIONS
MH does not allow you to have more than 100 folders at any level in your Mail directory.
PROFILE COMPONENTS
Path: To determine your MH directory
Folder-Protect: To set protections when creating a new folder
Folder-Stack: To determine the folder stack
lsproc: Program to list the contents of a folder
FILES
The user profile.
SEE ALSO csh(1), folder(1), refile(1), mhpath(1)folders(1)