gpt4 book ai didi

regex - Bash 脚本 : Append parent directories to filenames

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:26:50 27 4
gpt4 key购买 nike

如何将文件名的父目录普遍附加到文件名本身,例如

/home/username/Mirrors/earth.com/tree/apples/filename2.html
/home/username/Mirrors/earth.com/grass/flower/leave/filename1.html

以后应该是这样命名的文件:

earth.com/tree/apples/filename2.html
earth.com/earth/grass/flower/leave/filename1.html

理想情况下都位于一个文件夹中。这可以用 bash 脚本和 sed 来完成吗?

我为什么这样做:我正在使用 httrack 镜像一个巨大的网站,httrack 在其相对目录结构中保存一个文件,我无法让 httrack 获取将文件保存为完整的 URL。

最佳答案

好吧,您还没有定义要附加多少个父目录。将其作为运行时参数,您可以使用以下 awk 命令:

echo /home/username/Mirrors/earth.com/tree/apples/filename2.html | 
awk -F '/' -v D=3 '{for (i=D;i>=0;i--) {printf("%s", $(NF-i)); if (i>0) printf("/")}
print "";}'

输出

earth.com/tree/apples/filename2.html

关于regex - Bash 脚本 : Append parent directories to filenames,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10881165/

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