【问题标题】:Shell Script to update the contents of a folder用于更新文件夹内容的 Shell 脚本
【发布时间】:2010-08-09 09:10:53
【问题描述】:

我是 Unix Shell 脚本和 Perl 脚本的初学者。

我想要一个示例程序来教我如何更新目录中的文件内容。 场景是,有一个目录,其中包含 n 个文件。 在这 n 个文件中,有 m 个文件被修改。 我需要更新目录中修改后文件的内容。

给我一​​个简单的 shell 脚本来做这个。

感谢和问候,

维杰

【问题讨论】:

  • 这是求职面试吗?提交不是自己做的作品是不是有点不诚实?如果你不合格,你将如何处理日常工作?
  • 亲爱的异族杀戮者和以太,我会告诉你一些事情。我不在 Perl 编程或 Unix shell 脚本中工作。我的域与上述两个完全不同。我正在尝试自己学习 Unix 和 Linux,因为我想将我当前的域更改为新的、非常强大的东西。我是大型机系统管理员,而不是应用程序程序员。我只想成为一名程序员。感谢您对我的帖子添加评论。这并不困扰我,我真的很高兴看到人们除了评论别人无事可做......
  • @Invincible - (1) “给我一个简单的 shell 脚本来做这件事”对大多数人来说听起来很粗鲁; (2) “我尝试了 X、Y 和 Z,但它在 A、B 和 C 方式中都不起作用,请帮我解决问题”和“为我做我的工作”之间有很大的区别。您的问题看起来和听起来都像后者。
  • @DVK:好的 DVK。正如你所说,我应该告诉你,我尝试了一些方法,但没有成功。如果可能的话,请看看我的第二个问题。很抱歉。
  • @Invincible:我很高兴听到这个消息。我们在这里收到很多“请把代码发给我”的问题,人们试图在学业上作弊并通过工作面试假装自己的方式,所以当我们看到“给我一个脚本”时,没有试图解释他们到目前为止所做的尝试(这将有助于展示学习和解决特定问题的真正尝试),不难假设最坏的情况。您可能还会发现此链接很有趣:catb.org/esr/faqs/smart-questions.html

标签: perl shell


【解决方案1】:

我会用这样的 find 来做:

find your_directory -newermt time_of_last_check -exec modify_script.sh {} \;

地点:

your_directory 是您保存文件的目录。

time_of_last_check 是您上次运行此命令的时间

modify_script.sh 是您将运行以修改文件的程序,它应该有一个参数,即要修改的文件名。

【讨论】:

  • 非常感谢.. 有点帮助。花了太长时间才明白它到底是什么,..
【解决方案2】:

Perl

  • 要更新文件内容请参阅perlfaq5,您会发现很多关于文件操作的信息。您会得到很多示例 文件操作
  • 获取 File 或 Dir Statistics 请参阅 perl 内置函数 stat
  • 对于遍历目录树,请参见 File::Find

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-16
    • 2013-05-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-08
    • 2015-11-15
    • 2020-03-30
    • 1970-01-01
    相关资源
    最近更新 更多