繁体   English   中英

ls -ld的正则表达式

[英]regex for ls -ld

我的目录包含不同类型的文件,包括目录和名称相似的单个文件-因此模式必须非常精确。

我需要使用ls -ld来提取目录,并查找特定的模式目录。 得到这个之后,我需要找出特定的string_w_pattern要存储为变量的内容。

我在sh中运行它。

已知的字符串是my_dirmy_prop_dir

/my_dir/string_w_pattern/my_prop_dir

string_w_pattern由2-3个大写字母组成,其中一个数字始终排在第二位。

我尝试了以下操作,但由于string_w_pattern的名称相似, 因此获得了两个以上的输出。

ls -ld /my_dir/[A-Z]*[A-Z0-9]\/my_prop_dir

Shell在这里使用glob表达式语法,而不是正则表达式。 *将像正则表达式.*一样扩展。 同样,删除\\掩盖您的/ 尝试这个:

ls -ld /my_dir/[A-Z][A-Z][0-9]/my_prop_dir /my_dir/[A-Z][A-Z][A-Z][0-9]/my_prop_dir

要从结果中过滤出所需的字符串,请使用sed或cut。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM