相关疑难解决方法(0)

如何获取充当stdin/stdout的文件名?

我有以下问题.我想在Fortran90中编写一个程序,我希望能够像这样调用:

./program.x < main.in > main.out
Run Code Online (Sandbox Code Playgroud)

除了"main.out"(我可以在调用程序时设置其名称),还必须编写辅助输出,我希望它们具有与"main.in"或"main.out"类似的名称(它们是实际上并没有被称为"主要"); 但是,当我使用时:

INQUIRE(UNIT=5,NAME=sInputName)
Run Code Online (Sandbox Code Playgroud)

sInputName的内容变为"Stdin"而不是文件名.有没有办法获取程序调用时链接到stdin/stdout的文件名?

io stdin fortran stdout fortran90

3
推荐指数
1
解决办法
1140
查看次数

检查已运行的进程是否在 Linux 上重定向了标准输入?

给定进程的 PID,有没有办法找出该进程是否重定向了 stdin 或 stdout?

我有一个从标准输入读取数据的应用程序。为了方便起见,我通常使用从文件重定向的 stdin 来启动此应用程序,如下所示:

app < input1.txt

问题是,有时我启动应用程序并忘记我使用的输入文件是什么。有没有办法找出哪个文件已用于重定向标准输入?

使用ps -aux | grep PID允许我查看使用的命令行。但没有给我任何有关stdin或 的信息stdout

我也尝试过查看top以及 in/proc/PID/*但没有找到任何东西。

我正在使用 CentOS 7,如果有帮助的话。

linux terminal process

3
推荐指数
1
解决办法
1585
查看次数

标签 统计

fortran ×1

fortran90 ×1

io ×1

linux ×1

process ×1

stdin ×1

stdout ×1

terminal ×1