当前位置:  技术问答>linux和unix

求助: 用shell 给某个目录下所有.c文件的第一个#include<**>前面加几行代码

    来源: 互联网  发布时间:2016-04-10

    本文导语:  求助: 用shell 给某个目录下所有.c文件的第一个#include前面加几行代码 比如原来 //注释, 不知道几行 #include #include int main() { } 修改后 //注释 #if #else #end #include #include int main() { } | for file in ...

求助: 用shell 给某个目录下所有.c文件的第一个#include前面加几行代码
比如原来
//注释, 不知道几行
#include
#include
int main()
{
}
修改后
//注释
#if
#else
#end
#include
#include
int main()
{
}

|
for file in $(ls *.c)
do
   line=$(cat $file | sed -n '/^#include/=' | head -1)
   sed -i $line'i #ifn#elsen#end' $file
done

|
append="appendFileName"
tag="#include"
temp="file.num"
for file in `ls *.c`
 do
    grep -n "#include" $file | awk -F ':' '{print $1}' > $temp
    line=`head 1 $temp`
    if [ -n $line ]
      then
         lines=`expr $line -1`
         head $line $file > $file.tmp
         cat $append >> $file.tmp
         total=`wc -l $file | awk '{print $1}'`
         lines=` expr $total - $lines`
         tail $lines >> $file.tmp
         rm $file
         mv $file.tmp $file
    fi
 done

没怎么写shell脚本.
这只是一种思路:先确定#include在第几行,然后把#include前面的内容输出到临时文件中,然后再把附加的内容也输出到临时文件,接着把第一个#include此后的内容再输出到临时文件,把原来的文件删除,再把临时文件重名命名.
随手写的,不对的地方请见谅.

|
sed -i 's/^#include/#if 1n abcdnelse abcd n #endif n#include/g' test.c
把abcd换成你自己的内容就可以了

|
顶一楼,有个小错:)

    
 
 

您可能感兴趣的文章:

  • 紧急求助INCLUDE问题
  • 求助export问题,export CFLAGS= -I/include -L/lib
  • 求助:为什么加了<linux/sched.h>之后会有错误啊?有-I /usr/src/linux-2.4.20-8/include
  • 求助 ==> 代码移殖:从Linux到的Windows,请高手指点一二,谢谢啦
  • 求助:linux的源代码怎么才可以看见?
  • 求助:如何调出linux下kppp源代码?
  • 求助 程序中添加互斥锁代码后编译怎么通不过 ?
  • 100分求助 能不能提供一些有关图像分割的算法和实现代码!谢谢
  • 求助:snort源代码
  • 各位师哥师姐,我急切求助,关于文件的上传下载程序代码
  • 求助:Linux下ftp客户端代码编写
  • 求助如何顺利的阅读linux内核源代码
  • 求助:能给出一个在jsp里调用ActiveX控件的代码吗?
  • 求助java聊天室、公告栏、记数器、email的源代码
  • 【求助】一小段perl代码~谢谢
  • 求助!!关于两行代码的理解问题!请大虾近来看看!!(在线等待)
  • 求助!!关于两行代码的理解问题!请大虾近来看看!!
  • 来者有分,在线等待!100分求助:我在用JBuild运行JAVA代码时,出现下面的Message,为什么?
  • 求助:LINUX内核代码中# 与define之间有空格是怎么回事?
  • 【求助】快来人呐~!大家帮我看看我写的破代码哈!
  • 求助: 一段非常奇怪的代码( 关于fcntl文件锁 )
  • 急求助:linux下ftp客户端代码
  • 求助: Linux下查看代码的工具kscope-1.9.4 编译安装成功后 无法启动成功。
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 求助,在Linux下当文件夹大小超过1G时,删除文件夹内容
  • MAKEFILE求助,LINUX下如何将多个.a文件合并为一个.a文件或者.lib文件
  • 求助~~急~如何删除指定目录下的文件夹???(不是文件)
  • 求助关于zip命令,如何把文件压缩成指定大小的多个文件(Ubuntu7.04)
  • 求助!如何在没有图形界面的LINUX下压缩文件夹,并将这个压缩文件在windows下解压?
  • 求助文件操作中修改文件中字段的问题,请大家帮忙解决
  • [求助]修改文件内容
  • socket实现多文件并发传输,求助多线程实现问题?
  • 高分求助实例!!!!定期删除文件!!!!!
  • 高分求助!!!!定期删除文件!!!!!
  • 求助,linux中修改了目录dir下的某个文件,相应的dir属性中的时间会与修改目录下文件的时间一致,这是怎么实现的?
  • 求助!!用NFS传送文件显示乱码是怎么回事
  • 紧急求助:Unix下给文件夹重命名用什么命令?谢谢!!!!
  • 求助 请问vxworks支持inet_ntoa函数吗? 需要包含哪些头文件? 谢谢
  • 紧急求助!!!用CHKDSK/F检查磁盘,结果C盘下所有的文件的文件长度都变为0字节
  • 救命啊,AIX小机,我想删除一个10G的文件,我先移动到根目录下,然后rm 文件名后,用df -g发现空间没有变化?求助啊!
  • 求助 shell中split命令如何实现文件分割 并统计分割文件个数。分割完之后,命名方式从 文件名.001 开始
  • 求助,关于开发板的linux文件问题!
  • 求助:系统为什么会自动删除文件?
  • 求助!找不到头文件
  • 高分求助高分求助高分求助高分求助高分求助高分求助
  • 怎样读取HZK24S前十区的内容啊???求助求助
  • 紧急求助!紧急求助!
  • 【求助】iplanet问题,求助高手解答!
  • 菜鸟求助,solaris下计算问题求助
  • 【求助】SOS紧急求助..............极为简单的问题...跪求....
  • 高分求助啊!求助SUSE 10.0 不能上网.
  • 急急急急急急急啊,紧急求助啊!!!!!满分求助啊!!!!!!
  • 求助:linux下 vim的配置(高分求助)
  • red hat怎么安装gcc啊!总是出错,求助求助啊!!!yum源怎么改啊!!
  • 求助~~求助 ~~linux文件读写问题


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3