gpt4 book ai didi

ruby-on-rails - rails : How to pass data to Bash Script

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:23:06 26 4
gpt4 key购买 nike

我有一个 Rails webapp,里面装满了有考试成绩的学生。每个学生只有一个考试成绩。

我想要以下功能:

1.) 用户在网站中输入任意测试分数并按“输入”

2.) “数据从 Rails 数据库传递到 bash 脚本的一些奇怪魔法”

3.) 运行以下 bash 脚本:

./tool INPUT file.txt

哪里:

INPUT = 任意测试分数

file.txt = 数据库中所有学生考试成绩的列表

4.) “更奇怪的魔法,将 bash 脚本的输出发送回 rails View 并在网页上显示”

就是这样。

我不知道如何做这些奇怪的魔法部分。

我的解决方案尝试:

在 rails dbconsole 中,我可以这样做:

SELECT score FROM students;

这给了我所有考试成绩的列表(满足 bash 脚本的“file.txt”参数)。

但我仍然不知道我的 bash 脚本应该如何访问该数据。

我的 Controller 是否应该将数据传递给 bash 脚本?或者我的模型应该?这样做的语法是什么?

我知道我可以像这样从 Controller 运行 bash 脚本:

system("./tool")

但是,不幸的是,我仍然需要将参数传递给我的脚本,但我不知道该怎么做...

最佳答案

您可以只使用内置的 ruby​​ 工具来运行 shell 命令:

https://ruby-doc.org/core-2.3.1/Kernel.html#method-i-60

例如,在我的一个系统中,我需要获取图像方向:

exif_orientation = `exiftool -Orientation -S "#{image_path}"`.to_s.chomp

从我对 .to_s 的使用来看,运行命令有时可能会返回 nil,我不希望尝试 chomp nil 时出错。正常输出包括我提供给 chomp 的行结尾。

关于ruby-on-rails - rails : How to pass data to Bash Script,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40050087/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com