shell 中如何用for语句同时搜索两个文件夹内的所有文件,并进行文件比较,急用,希望高手解答,谢谢
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell 中如何用for语句同时搜索两个文件夹内的所有文件,并进行文件比较,急用,希望高手解答,谢谢相关的知识,希望对你有一定的参考价值。
不考虑子文件夹。先用ls命令枚举其中一个文件夹内的所有文件(用数组记录文件名)。
cd 目录1
declare -a array=(`ls`)
然后在枚举另一个文件夹时用for循环与数组元素逐个比较。
cd 目录2
for file2 in *
do
isFound=0
for file1 in $array[*]
do
if [ "$file2" = "$file1" ]; then
diff -y --suppress-common-lines 目录1/$file1 目录2/$file2
isFound=1
fi
done
[ $isFound -eq 0 ] && echo "目录2下的$file2文件在目录1下不存在!"
done
当然,还有一种情况我没有处理,即目录1下的内容在目录2中不存在。 参考技术A for /f %%i (文件夹1) do (
for /f %%j (文件夹2) do (
findstr /ivg:%%i %%j >output.txt
)
)
不好意思上面是bat的。。
dir1=`ls -l 文件夹1|grep "^-"|awk 'print $1'`
for file1 in $dir1
do
dir2=`ls -l 文件夹2|grep "^-"|awk 'print $1'`
for file2 in dir2
do
diff $file1 $file2 >output.log
done
done 参考技术B 代码中采用两个for循环就可以了。
Keil中如何用Keil中如何用汇编调用C函数?
如图所示,我在汇编中用IMPORT声明,调用C函数,但是编译提示错误,请问是什么原因?
检查C文件是否加入项目。检查C文件中是否有这两个函数的原型声明。 参考技术A 关注这个问题
以上是关于shell 中如何用for语句同时搜索两个文件夹内的所有文件,并进行文件比较,急用,希望高手解答,谢谢的主要内容,如果未能解决你的问题,请参考以下文章
Linux系统中如何用shell脚步判断是不是telnet成功。
oracle中如何用delect删除两个关联的表的一条信息,要是用delete不行那应该用啥?