lecture2 MIT 6.null

lecture2 MIT 6.null

文章目录


1 阅读 man ls ,然后使用ls 命令进行如下操作:

  • 所有文件(包括隐藏文件)(-al)
  • 文件打印以人类可以理解的格式输出 (例如,使用454M 而不是 454279954)(-h)
  • 文件以最近访问顺序排序(-t)
  • 以彩色文本显示输出结果

lecture2 MIT 6.null

2

编写两个bash函数 marco 和 polo 执行下面的操作。 每当你执行 marco 时,当前的工作目录应当以某种形式保存,当执行 polo 时,无论现在处在什么目录下,都应当 cd 回到当时执行 marco 的目录。 为了方便debug,你可以把代码写在单独的文件 marco.sh 中,并通过 source marco.sh命令,(重新)加载函数。
lecture2 MIT 6.null
lecture2 MIT 6.null

3

假设您有一个命令,它很少出错。因此为了在出错时能够对其进行调试,需要花费大量的时间重现错误并捕获输出。 编写一段bash脚本,运行如下的脚本直到它出错,将它的标准输出和标准错误流记录到文件,并在最后输出所有内容。 加分项:报告脚本在失败前共运行了多少次。
lecture2 MIT 6.null
运行
lecture2 MIT 6.null

4

本节课我们讲解的 find 命令中的 -exec 参数非常强大,它可以对我们查找的文件进行操作。但是,如果我们要对所有文件进行操作呢?例如创建一个zip压缩文件?我们已经知道,命令行可以从参数或标准输入接受输入。在用管道连接命令时,我们将标准输出和标准输入连接起来,但是有些命令,例如tar 则需要从参数接受输入。这里我们可以使用xargs 命令,它可以使用标准输入中的内容作为参数。 例如 ls | xargs rm 会删除当前目录中的所有文件。

您的任务是编写一个命令,它可以递归地查找文件夹中所有的HTML文件,并将它们压缩成zip文件。注意,即使文件名中包含空格,您的命令也应该能够正确执行(提示:查看 xargs的参数-d,译注:MacOS 上的 xargs没有-d,查看这个issue)

find . -type f -name "*.html" | xargs -d '\n'  tar -cvzf myhtml.zip

命令解析:

  • find后的点意思是查找路径为 当前目录及其子目录
  • -type f 代表查找的对象为file文件,而不是文件夹
  • -name “*.html” 代表查找的文件名为 .html
  • xargs -d ‘\n’ 代表stdin的数据按照’\n’切分

总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

上一篇:npm源切换:从别的源切换回npm源


下一篇:系统安全优化,防止系统乱码优化,定时任务