我正在使用我编写的python脚本从ls
获取一些标准输入,并将数据加载到该路径描述的文件中。它看起来像这样:
ls -d /path/to/files/* | python read_files.py
文件具有一定的名称结构,基于它们中的数据,但都存储在同一目录中。我想要使用的文件具有名称结构A<fileID>_###.txt
(其中###
总是有3位数字)。我只需将上面的内容稍微更改为ls -d /path/to/files/A*
即可完成获取以A开头的文件。但是,有些文件有一个名为B的后缀标志(所以文件看起来像A<fileID>_###B.txt
),我不想包含那些。
所以,我的问题是,有没有办法排除那些以...B.txt
结尾的文件(或者只包含以数字结尾的文件的方式)?我想到了一些影响:
ls -d /path/to/file/R*%d.txt
只包含以数字结尾的文件,后跟文件扩展名,但找不到任何类型的文档。
答案 0 :(得分:3)
你可以试试这个:ls A*[^B].txt
答案 1 :(得分:1)
shopt -s extglob
ls R*!(B).txt