linux 比较两个文件夹提取不同的文件

linux 比较两个文件夹提取不同的文件,第1张

#!/bin/bash

# 定义目录变量,便于引用

A=/tmp/A

B=/tmp/B

C=/tmp/C

# 显示B目录文件,按列显示,便于for循环时按行读取

ls  "$B"|awk '{print $n}' >line

# 主程序

for filename in `cat line`

do

# ! -f 判断文件名 -d 判断目录/ 是否在路径下存在,如果精确匹配需要用到md5sum!

if [ ! -f "$A"/"$filename" ] then

# 提示信息,可删除

echo $filename 在"$A"不存在,正复制到"$C"目录!

# cp -rf 在C目录不存在时直接创建

cp -rf  "$B"/$filename "$C"  

fi 

done

# 清除生成的文件列表文件

rm -rf line #!/bin/bash

A=/tmp/A

B=/tmp/B

C=/tmp/C

ls  "$B"|awk '{print $n}' >line

for filename in `cat line`

do

if [ ! -f "$A"/"$filename" ] then

echo $filename 在"$A"不存在,正复制到"$C"目录!

cp -rf  "$B"/$filename "$C"  

fi 

done

rm -rf line

Linux下使用cat命令读入两个文件,然后将重定向到一个新的文件。

用法案例:

将file1.txt和file2.txt合并到file.txt

$ cat file1.txt file2.txt >file.txt也可以只使用cat命令读入一个文件,然后使用>>将文本流追加到另一个文件的末位。

用法示例:

将file1.txt追加到file2.txt的末尾

$ cat file1.txt >>file2.txt


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/9027868.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-24
下一篇 2023-04-24

发表评论

登录后才能评论

评论列表(0条)

保存