我试图在Windows中编写一个shell脚本,这就是为什么我不使用awk
或grep -o
类的东西。
我正在尝试parsing正在使用的控制器的angular度文件。 例如,我将在文件中有这样的一行。
widgetList.controller('widgetListController', [
我想要的是拉出widgetListController
这是迄今为止我所得到的:
grep -h "[[:alpha:]]*Controller[[:alpha:]]*" C:/workspace/AM/$file | tr ' ' '\n' | grep -h "[[:alpha:]]*Controller[[:alpha:]]*"
它工作得很好,但它会像这样拉出整条线:
widgetList.controller('widgetListController',
而不仅仅是单词。
同样在控制器格式如下的情况下:
controller : 'widgetListController',
它返回'widgetListController',
我怎样才能调整这只是返回之间的什么? 我已经尝试了逃避那个angular色的各种方法,但它似乎并没有工作。
你可以使用这个sed命令:
sed "/Controller/s/.*'\([^']*\)'.*$/\1/" C:/workspace/AM/$file
输出:
widgetListController