搜索文件名的一部分

时间:2016-02-02 09:44:47

标签: bash shell

如何获取文件名:

"2012_AppOwner_TestClass.csv"     --> "AppOwner"

"2012_AppOwner_V2_TestClass.csv"  --> "AppOwner_V2"

我试过这个:

echo“2012_AppOwner_TestClass.csv”| awk -F'[_。]''{print $ 2}'

使用此解决方案,我得到的部分是“App_Owner”,但不是第二个例子中的版本号!

1 个答案:

答案 0 :(得分:0)

你可以试试像

这样的东西
>echo "2012_AppOwner_V2_TestClass.csv" | awk -F'[_.]' '{if (substr($3,1,1)=="V") print $2,$3; else print $2}'

result: AppOwner V2


>echo "2012_AppOwner_TestClass.csv" | awk -F'[_.]' '{if (substr($3,1,1)=="V") print $2,$3; else print $2}'

result: AppOwner