`
hulianwang2014
  • 浏览: 691514 次
文章分类
社区版块
存档分类
最新评论
  • bcworld: 排版成这样,一点看的欲望都没有了
    jfinal

目录下文件计数

 
阅读更多

每个linux下的PATH中包含的系统变量都有好多路径:

root@wl-MS-7673:/home/wl/桌面/shell# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/arm/4.5.1/bin
root@wl-MS-7673:/home/wl/桌面/shell# 

如果要统计PATH中每一个路径下的文件数量,那么首先要把PATH下的每一个路径提取出来,那么必须使用空格来替换冒号:

root@wl-MS-7673:~# echo $PATH | sed 's/:/ /g'
/usr/local/sbin /usr/local/bin /usr/sbin /usr/bin /sbin /bin /usr/games /usr/local/arm/4.5.1/bin

一旦分离里目录,就能在标准for语句中来遍历每个目录:

for directory in $mypath

do

..............

done

完整代码如下:

root@wl-MS-7673:/home/wl/桌面/shell# cat -n conutfiles.sh 
     1	mypath=`echo $PATH | sed 's/:/ /g'`
     2	count=0
     3	for directory in $mypath
     4	do
     5		check=`ls $directory`
     6		for item in $check
     7		do
     8			count=$[ $count + 1 ]
     9		done
    10		echo "$directory - $count"
    11		count=0
    12	done	
root@wl-MS-7673:/home/wl/桌面/shell# 


运行结果如下:

root@wl-MS-7673:/home/wl/桌面/shell# ./conutfiles.sh 
/usr/local/sbin - 0
/usr/local/bin - 0
/usr/sbin - 250
/usr/bin - 1870
/sbin - 182
/bin - 152
/usr/games - 4
/usr/local/arm/4.5.1/bin - 48



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics