萍聚社区-德国热线-德国实用信息网

 找回密码
 注册

微信登录

微信扫一扫,快速登录

萍聚头条

查看: 1920|回复: 5

shell skript编写

[复制链接]
发表于 2008-6-4 01:22 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册 微信登录

x
程序是在windows系统里用C语言写的,但在unix系统里运行会出现一些文本上的错误,有人告诉我要先使用dos2unix这个程序把程序转换一下。
因为程序很多, 要通过编辑一个shell skript来进行批量转换,因为本人以前没接触过unix,对它的命令不熟悉。

我的思路是这样的:
1,先指定c程序所在的目录。
2,使用for循环搜索所有.c的文件,找到一个转换一个,并保存到一个文件夹内。

哪位大虾能大概帮我写一下大概的格式,我现在还不知道具体会用到哪些指令。
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2008-6-4 22:58 | 显示全部楼层
#!/bin/bash  #你的系统默认bash的位置,不知道 echo $BASH

Input_dir=C_directory    #你的C程序的目录, 不知道进入你的C程序目录 pwd
Out_dir=output      # 输出文件的目录

for file in $directory/*.C    # 对C文件夹中所有以C结尾的文件进行操作
do  
filename=${file%%.C}
mv file $Out_dir/filename   #这里很关键,取决与你要怎么转换你的C文件, 自己对应修改
done
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2008-6-6 11:05 | 显示全部楼层
直接dos2unix *.c 不就完了,不明白为什么要用bash script呢?

还有gcc对于^M支持没有什么问题, 除非有其它的特殊字符。
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2008-6-6 12:55 | 显示全部楼层
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2008-6-6 14:11 | 显示全部楼层
the point is to process a batch of C files, I am not sure when use
dos2unix *.c
how to convert all c files to corresponding transforming file, such as
1.C to 1.txt
2.C to 2.txt
.
.
.
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2008-6-6 18:38 | 显示全部楼层
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
您需要登录后才可以回帖 登录 | 注册 微信登录

本版积分规则

手机版|Archiver|AGB|Impressum|Datenschutzerklärung|萍聚社区-德国热线-德国实用信息网 |网站地图

GMT+2, 2024-4-30 04:19 , Processed in 0.058998 second(s), 19 queries , MemCached On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表