# 定义目录变量,便于引用
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
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)