linux - 获取Linux目录下的name文件
问题描述
我想知道如何每次出现一次才能在我的目录中获取文件名:
示例
我有 :
服务器_20211018_10.txt 服务器_20211018_11.txt 服务器_20211018_12.txt 服务器2_20211018_10.txt 服务器2_20211018_11.txt 服务器2_20211018_12.txt
我想进入一个变量服务器部分,如:
服务器和服务器2
但我有多次出现,我不知道如何只得到一个
现在我做了:
find /home/me/2021/*serveur*20211015* -type f -printf "%f\n" | cut -d. -f1
这给了我所有的服务器名称,但多次,我只想要一个
我不确定它是否真的很清楚,但我尽力了
谢谢 !
解决方案
这应该有效:
find ./serveur* -type f -printf "%f\n" | grep -E ^[^_]+ -o | sort -u
- 找到符合您要求的文件('server' 后跟任何内容)
_
只获取(之前的部分^[^_]+
,或者“从不是的东西开始_
,直到你找到一个_
”)- 删除重复项
推荐阅读
- go - 更改地图链接是否并发安全?
- php - 在分页限制中使用联合
- elasticsearch - Kibana 脚本化字段排序
- python - python中的“print”做了什么编码转换?
- python - Numpy - 泛化随时间维度的裁剪
- entity-framework - Ef core 生成了两个具有相同名称的外键的列
- symfony - Symfony 和 Encore 在页面中打印关键路径的 css
- pandas - 过滤后无法在python(熊猫)中使用loc函数
- mysql - 数据库表创建日期“自行更改”
- jestjs - 开玩笑测试失败 -> 测试套件无法运行:�PNG SyntaxError: Invalid or unexpected token