有点新鲜。
为了解决这个问题,我尝试了参数扩展、grep、sed和echo,但是还不能完全解决这个问题。
我试图从bash脚本中的$pwd中提取特定的模式。
假设有多种完整路径:

/home/files/tmp8
/home/tmp28/essential
/home/tmp2/essential/log
/home/files/tmp10/executables
/tmp8/files/whatever/etc

在每一个实例中,我都想提取包含“tmp”和1个或多个整数的字符串。
因此,在处理$pwd的每个实例中,它将返回“tmp8”、“tmp28”、“tmp2”等。
对于功能/操作员如何解决这一问题的解释也将非常感谢。

最佳答案

使用grep -o只显示匹配的文本,使用regextmp[0-9]*即文字文本tmp后跟0个或多个数字:

grep -o 'tmp[0-9]*' file
tmp8
tmp28
tmp2
tmp10
tmp8

关于linux - 从bash脚本中的字符串中提取模式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41470654/

10-08 21:20