24小时热门版块排行榜    

查看: 1172  |  回复: 3

zhangyujin

铜虫 (正式写手)

[求助] 一百个FORTRAN任务怎么能一次提交SSH计算

我们的计算任务一次就有一百个fortran程序,每个程序一百多行,单机计算每个程序大概跑5分钟左右,所以每次都一个个的提交很耗时,怎么能把一百多个程序一次性提交到集群,然后一个个的执行,把每个程序的执行结果分别放到一个文件夹中?
      注意:每个fortran程序的输出结果都有三十几个文本文档(名字各不相同),不同的程序输出文档名相同,程序名字可以不同。
回复此楼
Hardworking!!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

linziwuli

新虫 (著名写手)

【答案】应助回帖


感谢参与,应助指数 +1
xzhdty: 金币+1, 谢谢参与 2012-09-01 21:08:18
我知道有一种方法,不过不知对你有用不。将每一个fortran程序都编译好,然后写一个批处理文件(文件扩展名为.cmd,在windows帮助里学习一下相关命令就可以了),最后运行这个批处理文件就行了。
2楼2012-09-01 10:50:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuhuisfp

金虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
xzhdty: 金币+1, 谢谢参与 2012-09-01 21:08:08
zhangyujin: 金币+8, ★★★★★最佳答案, 高手正解啊,谢谢~~ 2012-09-02 20:28:00
比如说在Linux服务器上有一百个可执行文件a1, a2, ......, b1, ....放在./bin目录下,另外创建一个Result目录用以保存结果

#!/bin/bash

# 遍历bin目录下的可执行文件,即你的fortran程序
for ExeFile in $(ls bin/)
do
         #为每个可执行文件创建一个目录保存结果
         mkdir "Result/${Exefile}out"
         # 将可执行文件copy在输出目录下。
         cp bin/$Exefile "Result/${Exefile}out"
         # 运行程序, 结果将会保存在各自文件夹下
         ./Result/${Exefile}out/$Exefile &
done
3楼2012-09-01 11:26:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kngshuai

铁虫 (小有名气)

首先生成100个可执行文件 1.exe....100.exe.

新建个记事本或写字本文件new.txt.
打开依次将1.exe....100.exe  100个文件名写入写如入,注意 必须“每个可执行exe 文件名占一行。文件名前不得有空格“

1.exe
2,xex
.
100.exe
然后关闭,将new.txt改成 new.bat
4楼2012-10-13 15:13:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zhangyujin 的主题更新
信息提示
请填处理意见