歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> SHELL編程 >> 自動生成C、C++、shell程序基本框架腳本

自動生成C、C++、shell程序基本框架腳本

日期:2017/3/1 9:16:26   编辑:SHELL編程

自動生成C、C++、shell程序基本框架腳本,該腳本根據使用者給出的擴展名生成不同程序的框架,這大大節省了我們在編程過程中的重復輸入基本框架的時間。

#!/bin/bash

declare -i cc_flag=0,c_flag=0,sh_flag=0

function main {
if [ $# -le 0 ];then
echo -e "\033[31mUsage: $0 <cpp_file_name | c_file_name | sh_file_name>\033[0m"
exit 1
fi

if [ -e $1 ];then
return 0
fi

# identify which template should be made accroding to the file suffix
if echo $1 | egrep ".*\.cc|cpp\>" &> /dev/null; then
cc_flag=1
elif echo $1 | egrep ".*\.c\>" &> /dev/null; then
c_flag=1
elif echo $1 | grep ".*\.sh\>" &> /dev/null; then
sh_flag=1
else
echo -e "\033[31mBad file! Not a C++_file or C_file or SH_file\033[0m";
fi

# accroding the flag to make template
if [ $cc_flag -eq 1 ];then
cat >> $1 <<EOF
#include <iostream>
using namespace std;

int main(int argc, char *argv[])
{
return 0;
}
EOF
elif [ $c_flag -eq 1 ];then
cat >> $1 << EOF
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(int argc, char *argv[])
{
return 0;
}
EOF
elif [ $sh_flag -eq 1 ] ;then
cat >> $1 << EOF
#!/bin/bash
# date : `date`
EOF
fi
}

main $*
vim $1

Copyright © Linux教程網 All Rights Reserved