如何让 Rscript 在非交互式 bash 模式下返回状态代码

2024-06-24

我正在尝试以 bash 脚本的形式从以非交互方式运行的 Rscript 中获取状态代码。此步骤是较大数据处理周期的一部分,其中涉及 db2 脚本等。

所以我在脚本sample.sh中有以下内容:

Rscript --verbose --no-restore --no-save /home/R/scripts/sample.r >> sample.rout

当运行此sample.sh 时,无论sample.r 脚本是完全运行还是在中间步骤中出错,它始终返回状态代码0。

我尝试了以下操作,但没有运气

1 - 在sample.sh 文件中,我为返回代码添加了一个if 和else 条件,如下所示,但尽管sample.r 在其中一个函数中失败,但它再次写回0。

if Rscript --verbose --no-restore --no-save /home/R/scripts/sample.r >> sample.rout
then
  echo -e "0"
else
  echo -e "1"
fi

2 - 我还尝试了包装器脚本,例如在sample.wrapper.sh文件中

r=0
a=$(./sample.sh)
r=$?

echo -e "\n return code of the script is: $a\n"
echo -e  "\n The process completed with status: $r"

在这里,在样本失败的情况下,我也没有得到预期的“1”。在两个变量的中间步骤中a and r。理想情况下,我想要一种捕获错误(如“1”)的方法a.

有人可以建议如何让 rscript 仅在整个脚本完成且没有任何错误的情况下写入“0”,而在所有其他情况下写入“1”吗?

非常感谢您的投入!谢谢你!


我通过除了回显之外还返回状态代码解决了该问题。下面是从sample.sh 脚本中截取的代码。此外,在sample.R代码中,我添加了trycatch来捕获错误并退出(状态= 1)。

function fun {

if Rscript --verbose --no-restore --no-save /home/R/scripts/sample.r > sample.rout 2>&1
then
  echo -e "0"
  return 0  
else
  echo -e "1"
  return 1
fi

}

fun

感谢大家的投入。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何让 Rscript 在非交互式 bash 模式下返回状态代码 的相关文章

  • `filter()` 输入 `..1` 出现问题。与闪亮的R

    我正在尝试构建一个闪亮的应用程序 根据用户条目过滤数据帧 但是 我正在努力使用我创建的函数来执行此任务 错误Problem with filter input 1 x Input 1 must be of size 9 or 1 not s
  • strsplit 与 gregexpr 不一致

    一条评论 https stackoverflow com questions 23961022 split strings on first and last commas 23964843 noredirect 1 comment3692
  • 使用 dplyr::filter 创建 R 函数问题

    我查看了其他答案 但找不到使下面的代码起作用的解决方案 基本上 我正在创建一个函数inner join两个数据框和filter基于函数中输入的列 问题是filter部分功能不起作用 但是 如果我将过滤器从函数中取出并附加它 它就会起作用my
  • 如何在 Markdown 标题中强制换行?

    我在 rmarkdown 文档中有一个很长的标题 我想在特定位置强制换行 最小示例 title Quite long title want the line break at the asterisk output html documen
  • 在 bash 中生成脚本并将其保存到需要 sudo 的位置

    在 bash 中 我可以根据此站点创建一个带有定界符的脚本 http tldp org LDP abs html abs guide html GENERATESCRIPT http tldp org LDP abs html abs gu
  • 从 Bash 中的字符串中删除固定前缀/后缀

    我想从字符串中删除前缀 后缀 例如 给定 string hello world prefix hell suffix ld 我如何得到以下结果 o wor prefix hell suffix ld string hello world f
  • 使用 cmd 和 R 配置 databricks

    我正在尝试使用 databricks cli 并调用 databricks 配置 这就是我从 cmd 执行此操作的方法 somepath gt databricks configure token Databricks Host shoul
  • 包“diamonds”不可用(对于 R 版本 3.0.0)[重复]

    这个问题在这里已经有答案了 在我的 R 环境中拥有钻石包 数据集的简单方法是什么 我是使用 RStudio 3 0 的新手 gt install packages diamonds Warning in install packages p
  • dplyr 通过评估查找单元格值来改变特定列

    我已经使用定额 符号和求值探索了各种选项 但我似乎无法获得正确的语法 这是一个示例数据框 data frame A letters 1 4 B letters 26 23 C letters c 1 3 5 7 D letters c 2
  • 在 BASH 中按字节读取文件

    我需要读取指定文件的第一个字节 然后读取第二个字节 第三个字节 依此类推 我怎样才能在 BASH 上做到这一点 P S 我需要获取这个字节的十六进制 完全重写 2019 年 9 月 比以前的版本更短更简单 速度更快 但没那么快 Yes ba
  • 在 R 中组合/合并列

    我可能在这个问题上遗漏了一些很容易的东西 我在任何地方都找不到正确的答案 我真的需要继续前进 所以我过度简化了我的数据 eventID lt c 2 4 Time lt c 09 32 09 43 df1 lt data frame eve
  • R 绘制一些 unicode 字符,但不绘制其他字符

    我们的系统管理员刚刚将我们的操作系统升级到 SLES12SP1 我重新安装了 Rv3 2 3 并尝试绘图 我用cairo pdf并尝试绘制 x 标签为的图 u0298即太阳能符号 但它不起作用 标签只是空白 例如 cairo pdf Rpl
  • R 中的离散化

    有谁知道有一个包可以实现连续变量离散化的监督学习算法 dprep 包包含类似的功能 但该包已被弃用 有任何想法吗 感谢您的帮助 您仍然可以使用dprep包 但你必须从源代码安装它 我刚刚测试过 它运行良好 不过 您或许可以看看离散化 htt
  • 如何根据子字符串匹配选择 R data.table 行(类似于 SQL)

    我有一个带有字符列的 data table 并且只想选择其中包含子字符串的行 相当于SQLWHERE x LIKE substring E g gt Months data table Name month name Number 1 12
  • 需要一种临时重定向 STDOUT 的方法

    我知道如何在 Linux 中重定向输出 问题是 我的 bash 脚本中有很多输出 我不想输入类似的内容 echo foo gt gt bar 一遍又一遍地 我更愿意做这样的事情 hey bash for the time being put
  • R 数据框中的重复行

    我正在尝试使用下面的代码复制数据框中的行 但是 我发现它很慢 duprow df 1 for i in 1 2000 print i df rbind df duprow 有更快的方法吗 您可以使用rep 例如对于数据框第 1 行的 5 个
  • 在ggplot2中设置base_size时重叠轴标签

    我正在改变base size via theme set 当我在屏幕上查看结果图时 它看起来很棒 但是 当我将其另存为 pdf 时 x 轴标签有点太接近轴编号 一件小事 theme set theme bw base size 9 不会造成
  • 没有适用于“filter_”的方法应用于类“c('double', 'numeric')”的对象

    使用下面的代码 我尝试过滤我的数据集 以便仅选择 CG less14 0 和 CG High14 0 的数据集 我收到错误 没有适用于 filter 的方法应用于 c double numeric 类的对象 我的代码有问题吗 married
  • 如何在R中绘制堆积柱形图?

    有谁知道如何使用 R 绘制由超过 1 个变量堆叠的列的直方图 就像excel中的 堆积柱形图 一样 谢谢你 我假设您确实想要一个条形图而不是直方图 在这种情况下 barplot从标准图形或barchart格子包中的两者都可以做到 或者使用
  • 根据值绘制具有条件颜色的折线图

    我想绘制折线图 根据值 它应该改变它的颜色 我发现的是 plot sin seq from 1 to 10 by 0 1 type p col ifelse sin seq from 1 to 10 by 0 1 gt 0 5 red ye

随机推荐

  • 如何释放Qthread对象的内存?

    我做过这样的事情 in the mainwindow s constructor QThread thr new QThread soundWorker work new soundWorker connect this SIGNAL pl
  • 实体框架 6 - 查询性能

    我使用 Entity Framework 6 目前有一个包含许多包含的查询 它将大约 1200 个实体加载到 dbContext 中 加载实体似乎相当慢 因为查询需要几乎一分钟的时间 对于表演我能做些什么吗 我有 4 个这样的查询需要 2
  • `*const T` 和 *mut T` 原始指针有什么区别?

    我正在编写一些不安全的 Rust 代码 所以我需要知道之间的确切区别 const T and mut T 我以为它就像 T and mut T 即你不能变异T通过 T 句号 但事实似乎并非如此 例如 指针包装器NonNull
  • 即使队列已重命名,如何在 Windows 上唯一标识该打印队列?

    如何唯一且可靠地识别给定服务器上的 Windows 打印队列 包括跨打印队列重命名 我想处理如下情况 Jdoe 创建打印机 A 我的程序在某个时刻收集有关打印机 A 的信息 Jdoe 将打印机 A 重命名为打印机 AA 我的程序在某个时刻再
  • 我可以在 OSX 中使用 Python 捕获键盘和鼠标事件吗?

    我正在尝试用 Python 为 OSX 编写一个简单的宏记录器 它可以在脚本在后台运行时捕获鼠标和按键事件并重播它们 我可以用autopy https github com msanders autopy对于后者 前者是否有一个类似的简单库
  • 我应该如何从主域链接子域的 CSS 文件?

    我可能在这里错误地使用了子域 而不是使用子目录 但我想将相同的 CSS 从我的主域 joeisaacson com 导入到我的子域 hire joeisaacson com 当前的文件结构如下 public html where joeis
  • 多个 tmux 前缀键组合?

    我按照我喜欢的方式设置了 tmux 我选择的前缀键是 因为它非常快速且易于使用 一切都很顺利 直到我尝试在手机上使用 tmux 因为手机没有 键 无论如何 是否可以将 a 附加绑定到前缀 这样我就可以使用BOTH同时进行组合 从 开始tmu
  • GDI+ 中随机发生的 AccessViolationException

    我们遇到的问题是有时AccessViolationException发生并绘制一个简单的组框 其背景为白色 顶部有一个红十字 我们无法可靠地重现此错误 它只是不时发生 我们没有做任何特别的事情 我们只是显示一个主窗口 其中包含菜单 工具栏
  • 使用 Spring MVC 进行基于角色的访问控制

    我想知道 Spring 基于角色的访问控制的最佳实践 我的要求是 我将向用户分配一组角色 例如 用户1 管理员 用户2 专家 user1 的访问权限如下所示 admin 会员管理 admin 项目管理 对于用户2 我的项目1 所以如果 us
  • WPF DataGrid 正在添加额外的“幽灵”行

    Hei 在我的应用程序中 我使用 DataGrid 来显示一些数据 为了让一切都与我正在使用的线程一起工作AsyncObservableCollection http www thomaslevesque com 2009 04 17 wp
  • Excel的INDEX函数可以返回数组吗?

    如果数据在范围内A1 A4如下 Apple Banana Orange Strawberry Then INDEX可用于单独返回该列表中的任何值 例如 INDEX A1 A4 3 会回来Orange 是否有类似的 Excel 函数或函数组合
  • Django 与其他 Python Web 框架相比?

    我几乎尝试过现有的每一个 Python Web 框架 我花了很长时间才意识到没有灵丹妙药的框架 每个框架都有自己的优点和缺点 我开始于蛇类 http snakelets sf net并衷心地享受能够在较低级别上控制几乎所有事情而无需大惊小怪
  • Dialogflow V2 Messenger 与多个消息集成

    我正在尝试在对 Dialogflow 的一次 Webhook 调用中发送多条消息 该消息应传递给 Messenger 现在 我的 Webhook 响应出现故障的 JSON 正文 fulfillmentText Text fulfillmen
  • 使用请求登录具有 javascript 登录表单的网站

    首先我要说的是我的编程经验很少 在过去几天尝试编写这个程序时 我学到了很多东西 我正在 Windows 7 上使用 PyCharm requests Beautiful Soup 和 lxml 运行 Python 2 7 我正在尝试从一个严
  • 最常见的已检查和未检查 Java 异常? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 据我了解 如果不逐一查找 API 文档 就无法找出方法抛出了哪些异常 由于这是不可能的 我想反向研究并询问您在处理时遇到的最常见的异常
  • 在 Mac 上的 IntelliJ IDEA 中更改基本代码完成的键盘快捷键

    There is very important shortcut for Basic Code Completion in IntelliJ IDE which assumed to be invoked as control space
  • 其他用户之间的 iCloud 共享 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 据我所知 iCloud 就像个人存储 您可以使用自己的 Apple ID 我想问的是 用户是否可以存储例如图像并与其他用户共享 这意味着类
  • css 中 (div#container) 和 (#container) 有什么区别

    众所周知 html标签中的id应该是唯一的 因此可以直接使用 container 但是我注意到一些开发人员会使用标签名称作为前缀 如下所示 div container 现在有区别吗 和性能有关系吗 或者这是最佳实践惯例 还是为了代码的易读性
  • 如何在 Android 上以编程方式删除文件?

    我在 4 4 2 上 尝试通过 uri 删除文件 图像 这是我的代码 File file new File uri getPath boolean deleted file delete if deleted boolean deleted
  • 如何让 Rscript 在非交互式 bash 模式下返回状态代码

    我正在尝试以 bash 脚本的形式从以非交互方式运行的 Rscript 中获取状态代码 此步骤是较大数据处理周期的一部分 其中涉及 db2 脚本等 所以我在脚本sample sh中有以下内容 Rscript verbose no resto