1.10 查找某目录下大小一样的文件

思路:
1、如何按照大小对目录下的文件进行排序,这样大小一样的文件就会排列在相邻
2、如何使用BEGIN语块读取文件的大小和文件名,并定义初始化变量
3、如何在文件大小一样的时候进行文件名打印
4、如何对比参照变量进行迭代
5、如何将输出的文件名排序后输入到某个文件
6、汇总脚本

下面一层层来解决

  1. 如何按照大小对目录下的文件进行排序,这样大小一样的文件就会排列在相邻
    ls -lS --time-style=long-iso

  2. 如何使用BEGIN语块读取文件的大小和文件名,并定义初始化变量

ls -lS --time-style=long-iso | awk 'BEGIN
{
# 第一个getline是用来丢弃第一行无用的文件数量值
getline;getline;
# 变量初始化
name1=$8;size=$5;
}
'
  1. 如何在文件大小一样的时候进行文件名打印
{
name2=$8;
if ($size==$5) {
print name1;print name2;
};
}
  1. 如何对比参照变量进行迭代
    size=$5;name1=name2;

  2. 如何将输出的文件名排序后输入到某个文件
    sort -u > duplicate_files

  3. 汇总脚本

#!/bin/bash

ls -lS --time-style=long-iso | awk 'BEGIN
{
getline;getline;
name1=$8;size=$5;
};

{
name2=$8;
if (size==$5) {
print name1;print name2;
};
size=$5;name1=name2;
}
}' | sort -u > duplicate_files

上一页➡️

下一页➡️

Calendar Oct 31, 2023
Edit Edit this page
本站总访问量:  次 您是本站第  位访问者