bash脚本正则表达式匹配
发布时间:2020-12-16 01:46:05 所属栏目:安全 来源:网络整理
导读:在我的bash脚本中,我有一个像.的文件名数组 files=( "site_hello.xml" "site_test.xml" "site_live.xml" ) 我需要提取下划线和.xml扩展名之间的字符,以便我可以遍历它们以便在函数中使用. 如果这是python,我可能会使用类似的东西 re.match("site_(.*).xml")
在我的bash脚本中,我有一个像.的文件名数组
files=( "site_hello.xml" "site_test.xml" "site_live.xml" ) 我需要提取下划线和.xml扩展名之间的字符,以便我可以遍历它们以便在函数中使用. 如果这是python,我可能会使用类似的东西 re.match("site_(.*).xml") 然后提取第一个匹配的组. 不幸的是这个项目需要用bash,所以 – 我怎样才能在bash脚本中做这种事情?我对grep,sed或awk不是很好. 解决方法xbraer@NO01601 ~ $VAR=`echo "site_hello.xml" | sed -e 's/.*_(.*).xml/1/g'` xbraer@NO01601 ~ $echo $VAR hello xbraer@NO01601 ~ $ 这回答了你的问题了吗? 只需在反引号(“)中通过sed运行变量 我不记得bash中的数组语法,但我想你自己也知道,如果你正在编写bash;) 如果不清楚,请不要犹豫再问. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |