为考试而学习;如何开始

为考试而学习;如何开始

采用两个命令行参数,第一个是目录名称,第二个是以字节为单位的文件大小。将您的 shell 脚本命名为“listfiles”。 Ø shell 提示符下的调用应类似于“$ listfiles /tmp 50”。 Ø 首先,你的shell脚本应该检查是否只传递了两个参数。 Ø 然后你的shell脚本应该检查第一个参数实际上是一个目录。 Ø 你的shell脚本应该列出你有读权限的目录中所有小于给定大小的常规文件。

答案1

由于这是作业,我只会给出提示:

  1. 传递给脚本的参数将可用为$1$2(等等以获取更多参数)。
  2. $#将是传递的参数数量。
  3. [ -d "dir" ]测试将测试是否dir是一个目录。
  4. find . -type f -size -50将找到所有常规文件当前的.大小小于 50 字节的目录 ( )。

一个简单的第一次开始:

#!/bin/sh

echo "There are $# arguments passed, the first two are '$1' and '$2'"

您应该能够通过阅读本网站上的相关问题和答案,或者使用命令man阅读您正在使用的 shell 的手册(例如man bash)来阅读其余内容。您bash还可以使用该命令help test来阅读有关-d测试以及如何比较数字的信息。

findman find本网站的问题中对此进行了记录并广泛引用。

您还应该查阅与您正在学习的课程相关的任何学习材料。

这个问题可能会作为您之前问题的重复而被关闭。如果您还有其他问题,请提出具体的以及您在解决问题时遇到的特定问题

一个好的问题包含对问题的解释、您正在使用的代码、执行代码的方式、您看到的任何实际错误消息和/或警告消息,以及您期望代码执行的操作。也可以看看“如何提出一个好问题?”“我应该避免问哪些类型的问题?在里面帮助中心

我们很乐意为您提供帮助,但我们不会为您编写脚本。

相关内容