pdafans 发表于 2008-6-4 00:22

shell skript编写

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

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

哪位大虾能大概帮我写一下大概的格式,我现在还不知道具体会用到哪些指令。

花生太太 发表于 2008-6-4 21: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

flysmall 发表于 2008-6-6 10:05

直接dos2unix *.c 不就完了,不明白为什么要用bash script呢?

还有gcc对于^M支持没有什么问题, 除非有其它的特殊字符。

IchBinZephyr 发表于 2008-6-6 11:55

对阿,这点任务直接用dos2unix和mv不就可以了么?

花生太太 发表于 2008-6-6 13: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
.
.
.

flysmall 发表于 2008-6-6 17:38

为什么要换成.txt?
页: [1]
查看完整版本: shell skript编写