如何从 Ruby 脚本运行 C++ 程序?
假设 Ruby 脚本生成了一个名为“hello.txt”的文件,我想运行一个 C++ 程序来获取 hello.txt 文件,使用它并编写另一个名为“result.txt”的文件,然后 Ruby 脚本继续读取 result.txt 文件。
例如,在我编写的 Linux shellg++ hello.c -c hello -o hello
中接收“result.txt”文件。
有没有一种方法可以让我从 Ruby 程序运行 shell 代码?
如何从 Ruby 脚本运行 C++ 程序?
假设 Ruby 脚本生成了一个名为“hello.txt”的文件,我想运行一个 C++ 程序来获取 hello.txt 文件,使用它并编写另一个名为“result.txt”的文件,然后 Ruby 脚本继续读取 result.txt 文件。
例如,在我编写的 Linux shellg++ hello.c -c hello -o hello
中接收“result.txt”文件。
有没有一种方法可以让我从 Ruby 程序运行 shell 代码?
您可以system
像其他人说的那样使用,但是您还应该检查退出值以验证成功或失败。
r = system("g++ hello.c -c hello -o hello") #=> r = true if success, nil if failed
我发现反引号比system
.
您可以通过以下方式触发 C++ 程序:
`./hello file.txt`
你能澄清一下你是否需要从当前目录中读取 results.txt 吗?
如果是这样,你可以使用类似的东西contents = IO::readlines './results.txt'
您可以使用系统:
system("./hello file.txt")