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
如何修改代碼,以便它可以過濾一些文件?
例如: 我有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
如何修改代碼,以便它可以過濾一些文件?
使用grep匹配所有文件不匹配您的正則表達式
FILES=$(ls <path>/*.cpp | grep -v Test&)
g++ ${FILES} -o $1.exe
是它可能使用一個makefile領域之外? http://mrbook.org/blog/tutorials/make/ - https://www.gnu.org/software/make/manual/html_node/Pattern-Rules.html – lemieuxster