linux学习之使用shell统计目录下文件、文件夹
一、什么是shell
shell是一个能使人和计算机沟通的程序,它能够将人布置的任务交给
计算机去完成
二、编程思想
小故事:有一天我的快递到了,我自己在外地没时间去拿,正好小明今天在家,我立马打个电话给小明。告诉他我的快递到了,你去xxx地方帮我拿下,拿到了告诉我有多少个。
从故事中得到结论:(首先)我要做某件事——(然后)我自己做不了
——(再然后)我交给一个能做的人去做——(最后)任务完成后将
我想要的结果给我
三、编写统计目录下文件和文件夹的shell
1.统计文件夹
>countfiles //创建一个contfiles文件
vi countfiles //使用 vim 编辑countfiles
然后填写
#!/usr/bin/bash //告诉电脑我使用的是哪种
shell
cd \$1 //cd进\$1($1表示第一个参
数)
ls -l|grep '^d'|wc -l //ls -l以行的形式列
出$1里面的文件
|grep '^d' 将前面
命令得到的结果当成参
数匹配以d开头的行,
'^d'是正则表达式
|wc -l 将前面命令得
到的结果当成参数进行
统计
2.统计文件
>countfile //创建一个contfile文件
vi countfile //使用 vim 编辑countfile
然后填写
#!/usr/bin/bash //告诉电脑我使用的事哪种shell
cd $1 //cd进$1($1表示第一个参数)
ls -l|grep '^[-dpslbc]'|wc -l //ls -l以行的形式
列出$1里面的文件
//|grep '^d'前面
命令得到的结果
当成参数匹配,以d
开头的行'^d'是
正则表达式
//|wc -l 将前面命
令得到的结果当成参数
进行统计
3.运行shell
前面写好了shell怎样运行呢?
首先,给countfiles护着coountfile可执行的权限:
chmod a+x countfiles
然后,使用bash命令执行countfiles:
bash countfiles /usr/bin(这个就是第一个参数,也就是脚本中的$1)