在shell中常使用命令通配符*操作文件,如可使用 rm 20160101.* 来批量删除前缀为20160101的全部文件:
但在Go中,使用如下代码居然无效:
1 | package main |
rm xxx通配符是 shell的一个功能,而非操作系统,其他编程语言一般不会提供类似的支持(即能否可以按通配符来删除文件)
在Go中可以使用 Glob功能模糊匹配到想要删除的文件,然后再进行删除,如下:
1 | package main |
打印出:
匹配到的文件为: [/Users/fliter/lab/log/20160101.debug /Users/fliter/lab/log/20160101.error /Users/fliter/lab/log/20160101.info /Users/fliter/lab/log/20160101.warning]
同时20160101开头的文件都已被删掉
原文链接: https://dashen.tech/2016/02/05/Go使用通配符删除文件/
版权声明: 转载请注明出处.