Day20 测试写起乃 - $CHILD_STATUS

这其实与测试无关是我最近看得很新奇的东西就来额外补充一下XD

在 rb file 里如果用反引号 可以执行 shell 指令

# $ rails console
2.6.6 :001 > `rails server` #会真的启动server

所以如果想要在 rb file 里撰写 shell 指令可以用这种方式

那该如何判断此 shell 指令到底有没有完成?

$CHILD_STATUS 就派上用场了

$CHILD_STATUS

$CHILD_STATUS 等同於 $? 他会回传上一个指令的状态

2.6.6 :001 > `code .` #会真的帮你开启 vscode
""
2.6.6 :002 > $?
#<Process::Status: pid 71680 exit 0>
2.6.6 :003 > $?.exited?
true
2.6.6 :004 > $?.pid
71680
# 没有执行成功
2.6.6 :009 > `open /frgr`
The file /frgr does not exist.
""
2.6.6 :010 > $?
#<Process::Status: pid 71726 exit 1>

若 > 1 就表示未完成,可能有错误。
若 == 0 表示有成功执行

这也能查看到上一个 pid 的 ID

虽然很少用到,但还是觉得很新奇XD 分享一下


<<:  #05 No-code 之旅 — Next.js 的 Pages 与 Routing

>>:  卡夫卡的藏书阁【Book6】- Kafka 实作新增 Topic

Day 28 测试 React 元件:测试 Redux

先看一下使用 redux 的元件小范例: import {createStore} from 're...

Day 31: 【全系列终】架构考古学

Appendix: 架构考古学 联盟会计系统 简述 1960 年代,很简单的 CRUD 记帐系统,由...

Day 22 Reversing Array

要将array内的资料交换的方式有很多种,但我认为最直觉的是以下两种。 第一种:建立一个新的阵列然後...

Day 29 - [Android APP] 07-MVVM中的RecyclerView与Adapter

铁人赛快到尾声了,今天想介绍在控制 RecyclerView 中回馈按钮时,遇到的状况。想想,这篇好...

Ruby--Find the Difference

Find the Difference 题目连结:https://leetcode.com/pro...