gpt4 book ai didi

linux - 根据大小比较两个文件

转载 作者:太空宇宙 更新时间:2023-11-04 05:51:28 25 4
gpt4 key购买 nike

我在提取不同大小的独特文件时遇到困难。

问题:目录内有几个文件,假设有 2 个 2 mb 的文件、4 个 4 mb 的文件和 3 个 6 mb 的文件。

现在,我们需要运行一个脚本,该脚本将检查所有文件及其大小,并仅打印第一次出现的不同大小的文件。

例如。如果它读取文件 f1 并且它是一个 2mb 文件,它将执行 ls -al of f1

下次如果它获取 2 mb 大小的文件,它将跳过它

因此在这种情况下,它将仅打印 3 个不同大小的文件,分别为 2 mb、4 mb 和 6 mb。

[sumit.gupta@abc ~]$ ll mytestfolder/
total 38972
-rw-rw-r-- 1 sumit.gupta sumit.gupta 2097152 Jan 6 23:26 f1
-rw-rw-r-- 1 sumit.gupta sumit.gupta 2097152 Jan 6 23:27 f2
-rw-rw-r-- 1 sumit.gupta sumit.gupta 4194304 Jan 6 23:28 f3
-rw-rw-r-- 1 sumit.gupta sumit.gupta 4194304 Jan 6 23:28 f4
-rw-rw-r-- 1 sumit.gupta sumit.gupta 6291456 Jan 6 23:28 f5
-rw-rw-r-- 1 sumit.gupta sumit.gupta 6291456 Jan 6 23:28 f6
-rw-rw-r-- 1 sumit.gupta sumit.gupta 4194304 Jan 13 11:11 f7
-rw-rw-r-- 1 sumit.gupta sumit.gupta 4194304 Jan 13 11:12 f8
-rw-rw-r-- 1 sumit.gupta sumit.gupta 6291456 Jan 13 11:12 f9

我正在脚本中尝试以下代码:

#!/bin/bash

source="/home/sumit.gupta/mytestfolder/"

ls -ltr /home/sumit.gupta/mytestfolder | cut -d ' ' -f 5,10 | \
head -n -1 > /tmp/abc.txt
ls -ltr /home/sumit.gupta/mytestfolder | cut -d ' ' -f5 | \
uniq > /tmp/def.txt
grep -F -vf /tmp/def.txt /tmp/abc.txt > xyz.txt

最佳答案

您可以使用“du -h 目录名/文件名”获取文件大小,并将其与输入文件大小进行比较。

关于linux - 根据大小比较两个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34759524/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com