#!/bin/env bash
## usage: addSpace <dir>
## example: ./addSpace src
is_directory()
{
local DIR_NAME=$1
if [ ! -d $DIR_NAME ]; then
return 1
else
return 0
fi
}
parseDir()
{
local dir=$1
if is_directory "${dir}"
then :
else
echo "error,please pass me a dirctory";
exit 1
fi
echo "working in ${dir}"
local filelist=`ls "${dir}"`
for filename in $filelist
do
local fullpath="${dir}"/"${filename}";
if is_directory "${fullpath}"
then
parseDir "${fullpath}"
else
suffix="${filename##*.}" ;
if [ 'cpp' == $suffix -o 'h' == $suffix ]; then
echo "parsing ${fullpath}"
echo "done!"
fi
fi
done
}
parseDir "$1"
注意:shell 里也由局部变量的概念 使用local关键字。
本文介绍了一个用于解析指定目录中C/C++源文件的Shell脚本。该脚本通过递归方式遍历目录,并检查每个文件是否为C/C++源文件。对于每个找到的源文件,脚本将执行特定的操作。
500

被折叠的 条评论
为什么被折叠?



