【问题标题】:Writing a script that prints information about a directory编写打印目录信息的脚本
【发布时间】:2016-08-10 17:59:42
【问题描述】:

我的脚本需要接受一个目录作为它的唯一参数,然后打印出以下信息:

  • 目录所在的驱动器有多满? (%)
  • 目录中有多少文件(包括子目录)、平均文件大小以及该目录中最大文件的完整路径。
  • 哪个文件(不包括目录)的硬链接最多?

我完全迷失了,绝望了。请帮忙!

【问题讨论】:

  • 看看man df和man find。

标签: bash directory average partition drive


【解决方案1】:

您需要创建一个简单的脚本——在这里编写如此简单的代码似乎是浪费时间,但这里有一些命令可以在您的脚本中使用。您还应该 man ls,并阅读有关 inode 和 ln 命令的信息。

df -k "$1"
ls -R $1| wc -l
ls -o $1/* | grep -v "^d" | sort -k2 | tail -1

不要只是将其转化为 - 在将命令放入脚本时学习它们。如果你不理解最后一个命令中的每一个,你就是在伤害自己。

【讨论】:

  • 感谢您的快速回复。我需要使输出看起来像这样:目录所在的分区已满 47%。给定目录中有 142 个文件。最大的文件是 42041 字节。等等。知道如何将您的答案纳入我想要的输出吗?
  • 记住引号,否则对于带有空格的参数将失败。
  • @AmarŠukman 我为你完成了 90% 的工作——我不能凭良心做剩下的。只需找到有关如何编写脚本的页面,如果您可以分配变量和“hello world”,则可以使用上述命令创建脚本。我什至会根据 andlrc 的建议编辑并给你一个引用,这样你就可以看到它是如何完成的。
猜你喜欢
  • 2014-04-29
  • 2013-05-28
  • 2017-10-02
  • 2012-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-03
  • 1970-01-01
相关资源
最近更新 更多