我想使用Perl的單行來混淆grep svn diff的一些輸出,所以我可以自動測試這些文件。我們有一個run_test.sh腳本,可以採取與前置多個PHP文件「測試」作爲自己的論據。最好的方法來完成這個Perl的正則表達式單行
到目前爲止,我有它成功地預先考慮以下‘測試’,以文件名
[[email protected] classes]$ svn diff | grep '(revision' | perl -wpl -e 's/(.*)\/(.*)$/$1\/Test$2/'
--- commerce/TestLCart.php (revision 104387)
--- commerce/manufacturing/TestLRoutingData.php (revision 104387)
現在我只想抓住文件/路徑將它傳遞給我們的run_test.sh,我可以用下面的awk來完成它,但是我正在努力提高我的Perl /單線程技巧。那麼如何修改perl單線程只額外提取文件路徑?
svn diff | grep '(revision' | perl -wpl -e 's/(.*)\/(.*)$/$1\/Test$2/' | awk '{print $2}' | xargs run_test.sh
偉大的答案是,我一直在關注他們,因爲他們得到修訂。當我重新開始工作並且會接受答案時,明天就會明白。 – 2010-11-11 01:12:30