我想从位于目标A的服务器A中找到大于1G的大文件夹。文件夹名称使用的是唯一名称。大文件夹的结果将使用tar加入并将其拆分为100MB。

拆分后,它将使用scp传输到目标B。由于安全问题,我无法使用rsync传输协议。

到达目标B后,我希望在服务器B上结合分割的tar并压缩到具有唯一名称的目标文件夹。

通过手动,我可以做到。但是穿上bash脚本我不知道如何启动它。我对bash脚本一无所知。请帮我

谢谢。

最佳答案

我将放置一些命令,您将需要了解如何为您的特定需求编写脚本。

通过运行此命令,您将找到哪个文件夹具有大于1G的文件夹。

du -h / | awk {'print $ 1'} | grep G

找到文件夹的大小(例如10G)后,可以运行命令

du -h / | grep 10G | awk {'print $ 2'}

您将看到具有此大小的文件夹的名称

您可以使用“>”符号将输出重定向到某个文件,然后再从该文件读取。

您可以使用如下命令:

X =`du -h / | awk {'print $ 1'} | grep G``

只需删除最后的第二个反勾号

将命令的输出存储在X中并稍后使用此变量,但是您不应该以零知识开始编写这种类型的脚本。

在那之后:

du -h / | grep $ X | awk {'print $ 2'}

请查看有关bash脚本的youtube教程,您将了解如何将此命令组合为一个脚本。

祝好运

关于linux - 查找大文件夹并使用拆分压缩,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23535856/

10-15 01:15
查看更多