Shell script to find the number of files present in the current directory without using WC command

#!/bin/bash
# Shell script to find the number of files present in the current
# directory without using WC command.
# NOTE/TIP:
# If allowed to use WC command then it should be as follows:
# ls | wc -l
# -------------------------------------------------------------------------
# Copyright (c) 2005 nixCraft project
# This script is licensed under GNU GPL version 2.0 or above
# -------------------------------------------------------------------------
# This script is part of nixCraft shell script collection (NSSC)
# Visit http://bash.cyberciti.biz/ for more information.
# -------------------------------------------------------------------------
FILE="/tmp/count.txt"
 
echo -n "Enter directory name : "
read dname
 
ls $dname > $FILE
 
echo "No of files in directory : $(grep [^*$] $FILE -c)"
rm -f $FILE

Featured Articles:

Want to read Linux tips and tricks, but don't have time to check our blog everyday? Subscribe to our email newsletter to make sure you don't miss a single tip/tricks.

{ 3 comments… read them below or add one }

1 :( September 28, 2009 at 10:02 pm

lol, rm -f $FILE ?

Reply

2 Jim October 8, 2009 at 9:22 pm

The wc line in the comment should be:

ls | wc -l

(with a lower case l, not uppercase as you have it shown)

Reply

3 Jules February 10, 2010 at 4:29 pm

It is lower case. Look at how the word “shell” is spelled a little higher.

Reply

Previous post:

Next post: