一、脚本内容如下,遍历某个目录下的文件,并且用cat 命令读取文件内容然后复制到output目录。
#! /bin/sh
if [ $# -lt 1 ]
then echo 'Please input path'
sleep 2s
exit
fi
export ret
java_suffix=.java
xml_suffix=.xml
pdf_suffix=.pdf
rm -r output
mkdir output
function allfiles(){
for file in `ls $1`
do
if [ -d $1"/"$file ]
then
allfiles $1"/"$file
else
#ret=$1"/"$file"\n"
ret=$1"/"$file
mkdir -p output/$1
echo -e output/$ret
if [[ $ret == *$xml_suffix* ]]
then
#echo -e path=$1
#echo -e $xml_suffix:$ret
newname=`echo $ret |sed 's/\.xml/\.java/'`
#echo "cat " $ret ">" output/$newname >>xml.txt
#echo "cat " output/$newname ">" output/$ret>>xml_init.txt
cat $ret >output/$newname
cat output/$newname >output/$ret
rm output/$newname
#cat $ret >output/$ret
elif [[ $ret == *$pdf_suffix* ]]
then
newname=`echo $ret |sed 's/\.pdf/\.bin/'`
cat $ret >output/$newname
cat output/$newname >output/$ret
rm output/$newname
else
echo -e path=$ret
file_suffix=`echo ${ret#*.}`
echo -e the suffix of file=$file_suffix
newname=`echo ${ret/%.$file_suffix/.bin}`
echo -e newname=$newname
cat $ret >output/$newname
cat output/$newname >output/$ret
rm output/$newname
#cat $ret >output/$ret
fi
fi
done
}
allfiles $1
sleep 2s
二、运行效果如下
三、参考文章