初学shell和make,今天,尝试写了一个为每本C源程序生成编译的makefile脚本:)
#!/bin/sh
rootdir=/BTMU/$1
if [ "$1" = "" ];then
echo "arg error,not input version!!!"
exit 1;
fi
if [ "$2" = "" ];then
echo "arg error,not input source file list file!!!"
exit 1;
fi
export rootdir
if [ ! -d "$rootdir" ];then
echo "rootdir is not dir"
exit 1;
fi
cmddir=`pwd`
echo $rootdir
cat /dev/null > sys.txt
cat /dev/null > compileok.txt
cat /dev/null > cmd.txt
ALLINC="-I \
/BeTRAN/include/"
cd $cmddir
rm -f log/*.txt
if [ ! -d "$cmddir/mak/" ];then
cd $cmddir
mkdir mak
fi
cd $cmddir
rm -f mak/*.mak
cmdR="xlc"
CFLAG="-c -qsuppress=1506-342"
INCFLAG="-I"
cat $2 |while read line
do
file="$rootdir/$line"
filename=`basename "$file"`
dirname=`dirname "$file"`
echo commpar:$file
if [ ! -f "$file" ];then
echo "$file" >>$cmddir/sys.txt
echo "$file is not file" >$cmddir/log/$filename.txt
cat $cmddir/log/$filename.txt
sleep 10
else
cd $dirname
echo path:`pwd`
echo "$filename.o : $file">$cmddir/mak/$filename.mak
echo " cd $dirname; $cmdR $CFLAG $INCFLAG../inc/ $ALLINC $file">>$cmddir/mak/$filename.mak
make -f $cmddir/mak/$filename.mak 2>> $cmddir/commpar.log
tfile=`cat $cmddir/commpar.log`
if [ "$tfile" = "" ];then
echo result :$file ok!!!
echo $file is ok!!! >>$cmddir/compileok.txt
echo "ok" >$cmddir/log/$filename.txt
else
cp $cmddir/commpar.log $cmddir/log/$filename.txt
fi
rm $cmddir/commpar.log
fi
done
分享到:
相关推荐
B shell与 C shell的区别 ; B shell的详解和C shell 的详解
shell shell练习 shell入门 shell shell练习 shell入门
shell排序shell排序shell排序shell排序shell排序shell排序shell排序
shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义shell讲义...
Shell源码Shell源码Shell源码Shell源码Shell源码Shell源码Shell源码Shell源码Shell源码Shell源码
资源名称:Linux Shell脚本学习基础视频资源目录:【】11a00d99b60c4e2eba3440b8aa3a6bdd【】linux_shell脚本编程_01认识shell,如何编写shell脚本和执行【】linux_shell脚本编程_02vivim简单的常用操作【】linux_...
shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程shell 编程...
shell编程指南shell编程指南shell编程指南shell编程指南shell编程指南shell编程指南shell编程指南shell编程指南
提问: 我想要知道运行中脚本子shell的进程id。我该如何在shell脚本中得到PID。 当我在执行shell脚本时,它会启动一个叫子shell的进程。作为主shell的子进程,子shell将shell脚本中的命令作为批处理运行(因此称为...
sshshell ssh shell 服务器 远程连接 FTP for mac ssh shell 服务器 远程连接
shell shellshellshell shell shell shell
shell帮助文档shell帮助文档shell帮助文档shell帮助文档shell帮助文档shell帮助文档shell帮助文档
shell是用户和Linux操作系统之间的接口。 什么是shell Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口。它是命令语言、命令解释程序及程序设计语言的统称。 shell是用户和Linux内核之间的...
shell 是操作系统的最外层。shell 合并编程语言以控制进程和文件,以及启动和控制其它程序。shell 通过提示您输入,向操作系统解释该输入,然后处理来自操作系统的任何结果输出来管理您与操作系统之间的交互。 ...
linux shell 精品 教程 学习shell必看
Shell编程详解,shell入门,shell实例
初学shell 入门好书!!!! 目 录 译者序 前言 第一部分 shell 第1章 文件安全与权限 1 1.1 文件 1 1.2 文件类型 2 1.3 权限 2 1.4 改变权限位 4 1.4.1 符号模式 4 1.4.2 chmod命令举例 5 1.4.3 绝对模式 5 1.4.4 ...
shell查看返回值,shell查看返回值,shell查看返回值,shell查看返回值,
Unix系列shell程序编写(上) awk基础入门(5) Unix系列shell程序编写(下) Unix系列shell程序编写(中) shell游戏:俄罗斯方块 shell游戏:五子棋 shell游戏:老虎机 shell游戏:贪吃蛇 shell游戏:扫雷 初学者入门...
Shell脚本,就是利用Shell的命令解释的功能,对一个纯文本的文件进行解析,然后执行这些功能,也可以说Shell脚本就是一系列命令的集合。 Shell可以直接使用在win/Unix/Linux上面,并且可以调用大量系统内部的功能来...