Counting up files


 
Thread Tools Search this Thread
Operating Systems Solaris Counting up files
# 1  
Old 06-11-2008
Counting up files

Hi,

I have a load of if statements that look for files in a directory, I want to be able to count them up and the total files confirmed in an email? I ahve tried expr but i this does not work and it only reads in the first if and ignores the rest.

Please see script,

#!/bin/ksh

###########
#VARIABLES#
###########

RUNREF=`date +%Y%m%d`
DIR="../files/"
EMAIL="cdmspb"
MAIL_FROM="******"

email_user()
{
#Email
mail -t "$1" << EOF
Subject: $3
From: $2
$4
$5
$6
EOF
}

##########################################################################
#check files are in a directory and once it has checked, email out to user#
##########################################################################

TOTAL_FOUND="0"

#echo "Look for file $DIR/abc.txt"
if [ -f ${DIR}abc.txt ]
then
TOTAL_FOUND=`expr $TOTAL_FOUND + 1`
fi

#echo "Look for file $DIR/def.out"
if [ -f {$DIR}def.out ]
then
TOTAL_FOUND=`expr $TOTAL_FOUND + 1`
fi

#echo "Look for file $DIR/ghi.dat"
if [ -f {$DIR}ghi.dat ]
then
TOTAL_FOUND=`expr $TOTAL_FOUND + 1`
fi

#echo "Look for file $DIR/jkl.csv"
if [ -f {$DIR}jkl.csv ]
then
TOTAL_FOUND=`expr $TOTAL_FOUND + 1`
fi

#echo "Look for file $DIR/mno.txt"
if [ -f {$DIR}mno.txt ]
then
TOTAL_FOUND=`expr $TOTAL_FOUND + 1`
fi

#echo "Look for file $DIR/pqr.dat"
if [ -f {$DIR}pqr.dat ]
then
TOTAL_FOUND=`expr $TOTAL_FOUND + 1`
fi

#echo "Look for file $DIR/stu.txt"
if [ -f {$DIR}stu.txt ]
then
TOTAL_FOUND=`expr $TOTAL_FOUND + 1`
fi

#echo "Look for file $DIR/vw.dat"
if [ -f {$DIR}vw.dat ]
then
TOTAL_FOUND=`expr $TOTAL_FOUND + 1`
fi

#echo "Look for file $DIR/xy.dat"
if [ -f {$DIR}xy.dat ]
then
TOTAL_FOUND=`expr $TOTAL_FOUND + 1`
fi

#echo "Look for file z.dat"
if [ -f {$DIR}z.dat ]
then
TOTAL_FOUND=`expr $TOTAL_FOUND + 1`
fi


FILE_LIST=`find $DIR`

# email all users
email_user "$EMAIL" "$MAIL_FROM" "Finished Running File Check : $RUNREF" "$TOTAL_FOUND File/s Found" "File/s available are" "$FILE_LIST"

##################################################

it is the TOTAL_FOUND that is not adding up at the end and when i get an email it only reads the first file lookup??

any help would greatly be appreciated!
# 2  
Old 06-11-2008
If I'm not missing something you want to count all the files in your directory.
Why not simply:

Code:
TOTAL_FOUND=`find $DIR -type f|wc -l`
FILE_LIST=`find $DIR -type f`

# 3  
Old 06-12-2008
Thanks

Hi,

That works great, sorry new to unix and it looks like i was trying to make it harder than it actually needed to be.

Thanks again
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Counting files without ls or wc

i need to write a shell script to "count the number of files in the current directory but without using either ls or wc command"..... please help! (1 Reply)
Discussion started by: lexicon
1 Replies

2. Shell Programming and Scripting

Counting Files

In a script, how would I go about finding the number of files for the first parameter after my script name? For instance, my script name is myscript.sh and the folder I am checking is not the current working directory, lets say it's folder1. so I type myscript.sh folder1 This script below... (2 Replies)
Discussion started by: Confirmed104
2 Replies

3. Shell Programming and Scripting

multiple files: counting

In a directory, I have 5000 multiple files that contains around 4000 rows with 10 columns in each file containing a unique string 'AT' located at 4th column. OM 3328 O BT 268 5.800 7.500 4.700 0.000 1.400 OM 3329 O BT 723 8.500 8.900... (7 Replies)
Discussion started by: asanjuan
7 Replies

4. Shell Programming and Scripting

counting prefixes of files

Hello, at the moment I'm on with programming some kind of version history script for network devices. The configration files are uploaded in the form: devicename-confg_date_time. For keeping the last 10 configurations I want to split the devicename from the rest. This works well with... (5 Replies)
Discussion started by: Sally[-_-]
5 Replies

5. UNIX for Dummies Questions & Answers

Counting rows in many files

I'm regularly counting the number of rows in a number of files. I need to know how many rows their are in all files together. Counting rows in one file I can handle, but how do I count rows in all at once? I'd be grateful for any answer. (7 Replies)
Discussion started by: DrZoidberg
7 Replies

6. Shell Programming and Scripting

Help with counting files please

Hi all. If I have a unix directory with multiple files, lets say, I have some with .dat extensions, some with .txt extensions, etc etc. How in a script would I provide a count of all the different file types (so, the different extensions, I guess) in the directory?? So if I had: test.dat... (6 Replies)
Discussion started by: gerard1
6 Replies

7. UNIX for Dummies Questions & Answers

Counting lines and files

Hi experts, First of all thanks for all your help. How can i count the lines within a text file and send this number to another text file? And by the way how can i count the number of files inside a tape ("/dev/rtp") that as one pattern (Ex. "/CTA/") and send this number to a text file? I... (6 Replies)
Discussion started by: jorge.ferreira
6 Replies

8. UNIX for Dummies Questions & Answers

counting files

Which one line command can count and print to the screen the number of files containing "a" or "A" in their name (5 Replies)
Discussion started by: Edy
5 Replies

9. UNIX for Dummies Questions & Answers

Counting Occurances in Two Files

I have two files I want to compare, one is a list of variables and the other is a text file COBOL program. Basically what I want to do is display only those variables that appear in the COBOL program only once. However I would also accept a count of each variable as it appears in the COBOL... (2 Replies)
Discussion started by: Keith Gergel
2 Replies
Login or Register to Ask a Question