2015-05-07 47 views
0

例如: 我有A.cpp,B.cpp,C.cpp Main.cpp,A_Test.cpp,B_Test.cpp,我想要一個腳本來編譯和運行Main.cpp,但不會編譯.cpp文件包含「測試」如何獲取所有文件但排除.sh中的某些文件?

現在這個腳本將編譯所有的cpp文件

#!/bin/ksh 
g++ *.cpp -o $1.exe 
./$1.exe 

如何修改代碼,以便它可以過濾一些文件?

+2

是它可能使用一個makefile領域之外? http://mrbook.org/blog/tutorials/make/ - https://www.gnu.org/software/make/manual/html_node/Pattern-Rules.html – lemieuxster

回答

0

使用grep匹配所有文件匹配您的正則表達式

FILES=$(ls <path>/*.cpp | grep -v Test&) 
g++ ${FILES} -o $1.exe 
相關問題