我们有以下文件名格式的文件
VER_ {文件名} _ {VERSION}
例子
VER_collect_important_info.pl_1.0.2
我们只想捕获“文件名”和“版本”号
那么如何删除文件名中的第一个_和最后一个_,以便我们可以捕获“ FILE NAME”和“ VERSION”(使用sed / awk或perl one-liner)
例子
echo VER_collect_important_info.pl_1.0.2 | <some syntax>
collect_important_info.pl 1.0.2
Perl对我来说比轻量级的替代品更自然:
echo VER_collect_important_info.pl_1.0.2 | perl -pe 's/^[^_]*_(.*)_(.*)$/$1 $2/'
如果不要使用比必要的重的过程,那我就停在那里。
sed可以做到这一点,但是不得不逃避括号之类的基本元素的感觉很笨拙:
echo VER_collect_important_info.pl_1.0.2 | sed 's/VER_\(.*\)_\(.*\)/\1 \2/'
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句