gpt4 book ai didi

bash - 列出名称中只有数字的文件

转载 作者:行者123 更新时间:2023-11-29 09:33:45 24 4
gpt4 key购买 nike

我有一个包含这些文件的目录:

1.html 22.html 333.html zxc.html

我想获取名称中只有数字的 html 文件的列表:

1.html 22.html 333.html

我觉得这行得通

find . -regex '^[0-9]+\.html'

ls -al | grep -E '^[0-9]+\.html$'

但我一无所获。我的想法是获取名称中只有数字的 html 文件,并将它们传递给 sed 进行替换。我正在使用 linux 和 bash

最佳答案

find-regex 匹配整个路径,而不仅仅是文件名(我自己似乎每次使用它都会忘记一次)。

因此,您可以使用:

find . -regex '.*/[0-9]+\.html'

(^$ 不是必需的,因为它总是针对整个路径进行测试。)

使用 find 在你想对文件做一些事情时也有优势,例如使用内置的 -exec-print0 和管道到 xargs -0 甚至(使用 Bash):

while IFS='' read -r -d '' file
do
# ...
done < <(find . -regex '.*/[0-9]+\.html' -print0)

echo with a glob, ls|grep 等当文件名包含空格(甚至是换行符)时往往会停止工作(我意识到这不会发生在这种情况;更多的是面向 future 和养成良好习惯的问题)。

关于bash - 列出名称中只有数字的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30527166/

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