gpt4 book ai didi

用于 Gzip 文件并将其移动到主目录的 Unix 命令

转载 作者:行者123 更新时间:2023-12-04 05:09:36 27 4
gpt4 key购买 nike

下面的 Unix 命令用于获取最近 30 分钟修改过的文件列表,该列表完美运行。

touch -t 02231249.00 /tmp/last30min
find /mydirectory -type f -newer /tmp/last30min
rm /tmp/last30min

有人可以向我提供 gzip 那些文件并将其移动到 home 或 tmp 目录的命令。

谢谢你的帮助!!!。

最佳答案

将 find 命令的参数用空字符分隔(如果文件名包含空格很重要)到 xargs做这份工作

find /mydirectory -type f -newer /tmp/last30min -print0 | xargs -0 -I{} sh -c 'gzip "{}"; mv "{}".gz ~'

哪里 -I{}告诉 xargs更换每个 {}在带有输入行的命令中,即 find 找到的当前文件.

如果您使用的是 Z shell ( zsh ),它会简单得多,一切都可以在 oneliner 中完成:
for i (/mydirectory/**/*(mm-30)) { gzip $i && mv $i.gz ~ }

这里 **递归搜索,和 (mm-30)表示在最后 (-) 30 分钟内修改。

关于用于 Gzip 文件并将其移动到主目录的 Unix 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15039302/

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