liudy02 发表于 2018-12-16 14:40:19

Fortran,尤其是IVF里能不能给文件改名,删除/复制文件?

我在某个地方看到说有个rename命令,试了一下,似乎只是在gfortran里边有效
另外gfortran里我也不知道删除文件怎么操作
另外,IVF里有没有这种改名、删除、复制文件的函数呢?
求各位大佬指点。


li913 发表于 2018-12-16 18:32:41

ivf有rename,需要use ifport;
改名、删除、复制文件可以用命令行,例如
call execute_command_line('dele a.txt')
具体命令,查询相应的系统。

liudy02 发表于 2018-12-16 19:06:24

本帖最后由 liudy02 于 2018-12-16 19:21 编辑

li913 发表于 2018-12-16 18:32
ivf有rename,需要use ifport;
改名、删除、复制文件可以用命令行,例如
call execute_command_line('dele ...
call execute_command_line()
呃,这个和Call system()有什么区别么……
不想用这个的原因是因为不能往里边传变量啊……
等等,我想想,其实也是可以的啊,其实Call system()里边的命令字符串可以用Fortran生成的啊
唯一剩下的问题就是命令行得到的结果怎么给传回来呢……

liudy02 发表于 2018-12-16 19:08:05

li913 发表于 2018-12-16 18:32
ivf有rename,需要use ifport;
改名、删除、复制文件可以用命令行,例如
call execute_command_line('dele ...

哦哦,刚刚试了ifport,果然可以了,非常感谢

li913 发表于 2018-12-16 20:04:39

liudy02 发表于 2018-12-16 19:06
call execute_command_line()
呃,这个和Call system()有什么区别么……
不想用这个的原因是因为不能往里 ...

两者等效,但 system 不规范。改名、删除、复制,这三个操作有什么可返回的?

liudy02 发表于 2018-12-16 20:34:44

li913 发表于 2018-12-16 20:04
两者等效,但 system 不规范。改名、删除、复制,这三个操作有什么可返回的? ...

哈,这三个操作是没有什么可返回的啊
所以主贴的问题已经解决了
可是我一直在想的问题其实是Fortran怎么方便有效地进行文字和文件编辑
如果打算用利用Shell文字编辑强大的特点进行混合编程的话
那就免不了要在Shell和Fortran之间来回互传数据了啊
前两天已经从版主石头那里学到可以把运行Fortran程序加到Shell管道里实现数据互传
可是我心里其实一直想的还是以Fortran为主程序
所以其实一直还是在琢磨怎么在Fortran主程序中和Shell脚本部分来回互传数据
刚才因你解答的提示,我终于想到其实输入的命令字符串是可以程序生成
这样向Shell传数据完全不是事情
只是可惜不知道怎么把Shell得到的数据传回Fortran主程序啊
你有什么好办法么?

li913 发表于 2018-12-17 19:47:40

liudy02 发表于 2018-12-16 20:34
哈,这三个操作是没有什么可返回的啊
所以主贴的问题已经解决了
可是我一直在想的问题其实是Fortran怎么 ...

把Shell得到的数据传回Fortran主程序? 如果是 shell 调用 fortran 的exe,可以用命令行参数;如果是fortran调用shell再返回fortran,我没有其他想法,用文件传递。

liudy02 发表于 2018-12-17 23:41:21

li913 发表于 2018-12-17 19:47
把Shell得到的数据传回Fortran主程序? 如果是 shell 调用 fortran 的exe,可以用命令行参数;如果是fort ...

唉,看来是真没有其他办法了……
非常感谢
页: [1]
查看完整版本: Fortran,尤其是IVF里能不能给文件改名,删除/复制文件?