当前位置: 技术问答>linux和unix
shell 菜鸟脚本求教
来源: 互联网 发布时间:2016-11-10
本文导语: 本帖最后由 saksak 于 2011-01-20 14:16:50 编辑 #!/bin/sh mkdir tmp cd tmp path = pwd cd .. fold1=$(echo $1|sed's|(^[^/]*).*|1|') fold2=$(echo $2|sed's|(^[^/]*).*|1|') compareFOLD() { for file in $1/* do if[-d $file]then compareFOLD $file elif[-f $file] the...
mkdir tmp
cd tmp
path = pwd
cd ..
fold1=$(echo $1|sed's|(^[^/]*).*|1|')
fold2=$(echo $2|sed's|(^[^/]*).*|1|')
compareFOLD()
{
for file in $1/*
do
if[-d $file]then
compareFOLD $file
elif[-f $file]
then
if[! -L$file]
then
file2=$(echo $file |sed"s|^.[^/]*(.*)|$fold21|")
diff $file $file2
if[$? -ne 0]
then
cp $file $(path)
fi
fi
fi
done
}
compareFOLD $fold1
比较两个目录,把不同的文件拷贝到临时目录中。 对于 sed流编辑器后的正则很不明白。谢谢
|
提取第一个参数的第一个/之前的部分,并赋值给变量fold1
假定第一个参数是a/b/c,那么fold1就是a
假定第一个参数是a/b/c,那么fold1就是a