gpt4 book ai didi

linux - 在多个目录中创建多个文件

转载 作者:太空宇宙 更新时间:2023-11-04 05:59:36 24 4
gpt4 key购买 nike

我有像这样的文件夹树:

00 -- 0
-- 1
...
-- 9
...
99 -- 0
-- 1
...
-- 9

在每个子文件夹中创建文件的最简单方法是:/00/0/00_0.txt并将某种数据保存到每个文件中?

我尝试了触摸循环,但没有成功。有什么想法可以让它变得非常简单吗?

最佳答案

使用 glob 列出所有目录。使用 sed 修改列出的路径,使 37/4 变为 37/4/37_4.txt。使用 touch 为所有修改的路径创建空文件。

touch $(printf %s\\n */*/ | sed -E 's|(.*)/(.*)/|&\1_\2.txt|')

即使 12/3 只是一个占位符并且您的实际路径类似于 abcdef/123,这也有效。但是,当您的路径包含任何特殊符号(例如空格、*?)时,它将失败。

要处理任意路径名,请使用以下命令。它甚至支持路径名中的换行符。

mapfile -td '' a < <(printf %s\\0 */*/ | sed -Ez 's|(.*)/(.*)/|&\1_\2.txt|')
touch "${a[@]}"

关于linux - 在多个目录中创建多个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53607654/

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