对于轻量级的VSCode编辑器,我想像使用那些IDE一样,通过简单的几步就能构建出自己的项目文件树,类似于下面的结构。所以特地写了一个脚本,用于自动创建一个基本的项目。
.
├── Headers
│ └── test.hpp
├── makefile
├── Output
│ └── bin
└── Sources
├── main.cpp
└── test.cpp
下面直接提供脚本:
### new.sh
# 输入一个文件名 $projectname
read projectname
# 添加前缀
filename="VSC_CPP_"$projectname
# 源文件目录
Src="$filename/Sources"
# 头文件目录
Inc="$filename/Headers"
# 创建项目树
mkdir -p $Src $Inc $filename/Output/bin
# 创建makefile文件
touch $filename/makefile
# 创建 main.cpp文件
touch $Src/main.cpp
# 文件名小写转换
#declare -l lfilename=$projectname
lfilename="${projectname,,}"
# 源文件
cpp_file=$Src"/"${lfilename}".cpp"
# 头文件
hpp_file=$Inc"/"${lfilename}".hpp"
# 创建一对项目文件
touch $cpp_file $hpp_file
# 向main.cpp中写入内容
echo "#include <iostream> " >> $Src/main.cpp
echo "#include \"$lfilename.hpp\"" >> $Src/main.cpp
echo "" >> $Src/main.cpp
echo "using namespace std;" >> $Src/main.cpp
echo "" >> $Src/main.cpp
echo "int main()" >> $Src/main.cpp
echo "{" >> $Src/main.cpp
echo " cout << \"Hello VSC\" << endl;" >> $Src/main.cpp
echo " return 0;" >> $Src/main.cpp
echo "}" >> $Src/main.cpp
# 向*.hpp中写入内容
echo "#pragma once" >> $Inc/$lfilename.hpp
echo "#include <iostream>" >> $Inc/$lfilename.hpp
echo "using namespace std;" >> $Inc/$lfilename.hpp
echo "" >> $Inc/$lfilename.hpp
echo "class $projectname" >> $Inc/$lfilename.hpp
echo "{" >> $Inc/$lfilename.hpp
echo "public:" >> $Inc/$lfilename.hpp
echo " $projectname();" >> $Inc/