Sponsored Content
Full Discussion: Counting up files
Operating Systems Solaris Counting up files Post 302204399 by Pablo_beezo on Wednesday 11th of June 2008 12:16:30 PM
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!
 

9 More Discussions You Might Find Interesting

1. 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

2. 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

3. 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

4. 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

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

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

7. 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

8. 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

9. 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
strclean(1M)															      strclean(1M)

NAME
strclean - remove outdated STREAMS error log files SYNOPSIS
logdir] age] DESCRIPTION
cleans the STREAMS error logger directory of log files mm-dd) that contain error messages sent by the STREAMS log driver, strlog(7). If the option is not used to specify another directory, removes error log files in the directory. If the option is not used to specify another age, removes error log files that have not been modified in three days. Options recognizes the following options and command-line arguments: Specifies a directory for the location of the STREAMS error log files to be removed if this is not the default directory Specifies a maximum age in days for the STREAMS error log files if this not the default age of 3. The value of age must be an integer greater than or less than 3. EXAMPLES
Remove day-old error log files from a directory called FILES
One or more error log file or files on which operates. The mm-dd in the filename indicates the month and day of the messages con- tained in the file. NLS catalog for SEE ALSO
strerr(1M), strlog(7). strclean(1M)
All times are GMT -4. The time now is 08:06 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy