首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当名称不存在时,GAS getSheetByName退出进程

当名称不存在时,GAS(Google Apps Script)中的getSheetByName函数会返回null,而不会退出进程。getSheetByName函数用于根据给定的名称获取指定的工作表对象。如果找不到具有指定名称的工作表,该函数将返回null。

在处理这种情况时,可以使用条件语句来检查返回值是否为null,并采取相应的操作。例如,可以输出错误消息或执行其他逻辑来处理找不到工作表的情况。

以下是一个示例代码片段,演示如何处理getSheetByName函数返回null的情况:

代码语言:txt
复制
function processSheet() {
  var sheetName = "Sheet1";
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
  
  if (sheet == null) {
    // 工作表不存在的处理逻辑
    Logger.log("找不到名为 " + sheetName + " 的工作表");
    return; // 退出进程
  }
  
  // 工作表存在的处理逻辑
  // ...
}

在上述示例中,如果名为 "Sheet1" 的工作表不存在,getSheetByName函数将返回null。然后,通过条件语句检查返回值是否为null,并在找不到工作表时输出错误消息并退出进程。

请注意,上述示例中的代码是使用Google Apps Script编写的,用于在Google Sheets中处理工作表。对于其他云计算平台或开发环境,可能会有不同的处理方式和函数。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何在Bash中等待多个子进程完成,并且其中任何一个子进程以非零退出状态结束,使主进程也返回一个非零的退出码?

问题 如何在 Bash 脚本中等待该脚本启动的多个子进程完成,并且这其中任意一个子进程以非零退出码结束,让该脚本也返回一个非零的退出码? 简单的脚本: #!.../bin/bash for i in `seq 0 9`; do calculations $i & done wait 上述脚本将会等待所有 10 个被创建的子进程结束,但它总会给出退出状态 0...我应该如何修改这个脚本,使其能检测到被创建子进程退出状态,并且任何子进程以非零代码结束,让脚本返回退出码 1?.../usr/bin/env bash # 这是一个特殊的 sleep 函数,它将睡眠的秒数作为"错误代码" # 或"返回代码"返回,以便我们可以清楚地看到,实际上 # 我们在每个进程完成确实获取了它的返回代码...[ $rc -ne 0 ] && break # 若子进程以非零退出码结束,则跳出循环 done #echo $rc exit $rc 将代码保存为文件 wait_procs_demo.sh,再运行测试

9000

EVM 源码解析

图片Gas:GGas:图片每次执行指令,内部计数器会记录需要向用户收取的佣金。当用户发起交易,钱包中需要留有少量资金来支付这些佣金。gas 有两个功能:经济激励。确保为矿工预付报酬,即使执行失败。...交易接触过的账户集合,其中的空账户可以在交易结束删除。应该返还的余额,使用 SSTORE 指令将非 0 的合约 storage 重置为 0 ,该余额会增加。...如果 target address 是 precompile 的,则执行 precompile 并记录消耗的 gas退出子状态,结束;否则,继续下一步。...退出子状态:将子状态更新到当前 executor,如 gas,logs,accounts,deletes 等,从内存中删除 reset 为 true 的 account。...退出子程序:从内存中删除被标记为 touched 的 account。调用栈深度 depth 减 1。返回消耗的 gas 和计算结果。更新并返回当前程序的 gas 和 state。

1.2K20
  • 第二十八课 区块链应用DAPP如何探测MetaMask的账号和登录状态?

    3)MetaMask退出状态 MetaMask钱包logout了以后,页面也会一起logout。 提示登录MetaMask 当用户登录后,该提示消失。...2)检测MetaMask账号是否已退出 样例代码: /*这个是判断你有没有登录,coinbase是你此时选择的账号*/ if (!...MetaMask插件 CHROME浏览器不存在MetaMask,会提示需要安装MetaMask插件。...4) 测试CHROME中MetaMask处于logout状态 MetaMask处于LOGOUT状态, image.png 更新主页会有登录提示: image.png 5) MetaMask...处于主网,会有网络配置错误提示 image.png 6) MetaMask处于Ropsten测试网络,进行更新操作 更新输入“王登辉”“18”,点击更新。

    2.6K30

    智能合约中Gas限制和DoS攻击漏洞

    一笔交易开始执行时,它会从交易者提供的Gas总量中扣除费用,直到合约执行完成或Gas耗尽。如果在执行过程中Gas耗尽,那么交易将被回滚,且已经消耗的Gas不会退还给用户。...例如,攻击者可以创建一个合约,该合约在接收到消息执行大量计算或存储操作,消耗接近最大Gas限额的Gas量。...许多这样的交易被同时发送到网络,它们会占据大部分甚至全部的Gas容量,导致其他用户的正常交易无法被确认,从而达到拒绝服务的效果。...合约进入无限循环,它会尝试消耗所有可用的Gas,最终导致交易失败,并可能使合约处于不可用状态。...2、检查和修复逻辑:确保循环中有正确的退出条件。 3、Gas效率优化:尽可能减少每次循环中的操作,以降低Gas消耗。

    10910

    MySQL的间隙锁

    0x01:什么是间隙锁 间隙锁(Gap Lock)是Innodb在可重复读提交下为了解决幻读问题引入的锁机制。...当用范围条件而不是相等条件检索数据,并请求共享或排他锁,InnoDB会给符合条件的已有数据记录的索引项加锁;对于键值在条件范围内但不存在的记录,叫做“间隙(GAP)”,InnoDB也会对这些“间隙”进行加锁...0x02:间隙锁引起的问题 因为执行SELECT语句中,如果通过范围查找的话,间隙锁会锁定整个范围内所有的索引键值,即使这个键值并不存在。...这个就是间隙锁最致命的缺点,就是锁定一个范围键值之后,即使某些不存在的键值也会被无辜的锁定,而造成在锁定的时候无法插入锁定值范围内的任何数据,在某些场景下这可能会针对性造成很大的危害。...(3, 'java乐园'); INSERT INTO `gas_lock_tab`(`id`, `user_name_py`) VALUES (5, '架构师知音'); INSERT INTO `gas_lock_tab

    82110

    think-queue 解析上

    任务延迟执行 queue_failed 任务执行失败 命令参数 参数 默认值 可以使用的模式 描述 queue null work,listen 要执行的任务名称 daemon null work...不存在新消息,会sleep一段时间然后退出; 有 daemon 参数 work进程会循环地处理队列中的消息,直到内存超出参数配置才结束进程。...不存在新消息,会在每次循环中sleep一段时间; listen: 父进程 + 子进程 的处理模式; 会在所在的父进程会创建一个单次执行模式的work子进程,并通过该work子进程来处理队列中的下一个消息...,这个work子进程退出之后; 所在的父进程会监听到该子进程退出信号,并重新创建一个新的单次执行的work子进程; 2: 退出时机不同 work: 看上面 listen: 所在的父进程正常情况会一直运行...异常并退出; 开发者可以选择捕获该异常,让父进程继续执行; 02: 所在的父进程因某种原因存在内存泄露,则进程本身占用的内存超过了命令行中的 --memory 参数配置,父子进程均会退出

    77121

    Docker运行命令示例

    从中创建容器的镜像名称是docker run命令的唯一必需参数。如果本地系统上不存在该映像,则将其从注册表中拉出。...在前台中运行容器 默认情况下,docker run命令未提供任何选项,根进程将在前台启动。这意味着来自根进程的标准输入,输出和错误将附加到终端会话。...要停止容器,请按CTRL+C终止正在运行的Nginx进程。 以分离(后台)模式运行容器 要在退出终端会话保持容器运行,请以分离模式启动容器。这类似于在后台运行 Linux进程。...要将终端连接到分离的容器根进程,请使用 docker container attach令。 在退出后移除容器 默认情况下,容器退出,其文件系统将保留在主机系统上。...--rm选项告诉docker run命令在容器自动退出将其删除: docker container run --rm nginx 在容器退出后,Nginx映像可能不是清理容器文件系统的最佳示例。

    1.2K10

    think-queue 解析上

    任务延迟执行 queue_failed 任务执行失败 命令参数 参数 默认值 可以使用的模式 描述 queue null work,listen 要执行的任务名称 daemon null work...不存在新消息,会sleep一段时间然后退出; 有 daemon 参数 work进程会循环地处理队列中的消息,直到内存超出参数配置才结束进程。...不存在新消息,会在每次循环中sleep一段时间; listen: 父进程 + 子进程 的处理模式; 会在所在的父进程会创建一个单次执行模式的work子进程,并通过该work子进程来处理队列中的下一个消息...,这个work子进程退出之后; 所在的父进程会监听到该子进程退出信号,并重新创建一个新的单次执行的work子进程; 2: 退出时机不同 work: 看上面 listen: 所在的父进程正常情况会一直运行...异常并退出; 开发者可以选择捕获该异常,让父进程继续执行; 02: 所在的父进程因某种原因存在内存泄露,则进程本身占用的内存超过了命令行中的 --memory 参数配置,父子进程均会退出

    1.2K51

    Dockerfile

    FROM scratch:不依赖任何基准镜像MAINTAINER 机构描述:维护机构WORKDIR 目录名称:切换工作目录相当于 cd 命令,如果工作目录不存在,会自动创建,尽量使用绝对路径ADD 源文件地址...复制的目标地址:将指定的文件或目录复制到镜像的指定目录下,如果指定目录不存在,会自动创建目录,ADD test / 复制到根路径下,ADD test.gz / 复制后还会对文件进行解压LABEL:其它的描述信息...,生一个子 shell 进程在子 shell 中执行脚本,执行完毕后,退出子 shell,回到当前 shell子 shell 退出后,不会对父进程产生影响图片Exec 命令方式RUN ["yum", "...install", "-y", "vim"]会用 Exec 进程替换当前进程,并保持 pid 不变执行完毕后,直接退出,并不会退回到之前的进程环境推荐使用 Exec 方式来执行命令图片镜像创建执行的命令...Docker 镜像是分层构建的,Dockerfile 中每条指令都会新建一层Layer 是按顺序构成的,最底层的 Layer 是基础镜像(base image)最上层是最终镜像(final image)一个镜像被更新或重新构建

    24010

    快速学习-以太坊交易中的gas

    交易中的gas 由于交易或消息触发 EVM 运行时,每个指令都会在网络的每个节点上执行。这具有成本:对于每个执行的操作,都存在固定的成本,我们把这个成本用一定量的 gas 表示。...gas 是交易发起人需要为 EVM 上的每项操作支付的成本名称。发起交易,我们需要从执行代码的矿工那里用以太币购买 gasgas 与消耗的系统资源对应,这是具有自然成本的。...因此在设计上 gas 和ether 有意地解耦,消耗的 gas 数量代表了对资源的占用,而对应的交易费用则还跟 gas 对以太的单价有关。...这两者是由自由市场调节的:gas 的价格实际上是由矿工决定的,他们可以拒绝处理 gas 价格低于最低限额的交易。...我们不需要专门购买 gas ,只需将以太币添加到帐户即可,客户端在发送交易时会自动用以太币购买汽油。而以太币本身的价格通常由于市场力量而波动。

    53020

    智能合约编程语言-solidity快速入门(下)

    发生assert类型异常,会消耗掉所有提供的gas,而require类型异常则不会消耗。发生require类型的异常,Solidity会执行一个回退操作(指令0xfd)。...子调用中发生异常,异常会自动向上“冒泡”。 不过也有一些例外:send,和底层的函数调用call, delegatecall,callcode,发生异常,这些函数返回false。...函数返回多个值,可以使用多个变量去接收,此时元组内的元素就会同时赋值给多个变量,这个过程就称之为参数解构。...调用其它合约的函数,可以通过选项.value(),和.gas()来分别指定要发送的以太币(以wei为单位)和gas值。...回退函数会在以下情况被调用: 发送以太币 被外部调用了一个不存在的函数

    1.4K21

    EVM Gas 分析

    以以太坊为例,当用户需要在链上进行一笔交易gas fee 不是从用户发送的 token 数量中扣除,而是从用户地址剩余的 ETH 中扣除。...Gas fee 会在用户进行交易的同时扣除,交易预计要支付 gas fee 的数量会在交易提示给用户,因此用户需要保证在钱包中拥有足够的 ETH 可以支付 gas fee。...这部分费用最后将被销毁并退出流通。 优先费:由用户选择性支付,该费用直接支付给矿工,对于想要加快交易速度的用户同样可以设置高额度来吸引矿工。...伦敦升级后虽然让 gas 费的计算变的更加复杂了,但提升了用户在设定 gas fee 的体验,这些机制也使得 gas 价格可以更加平稳。...如何使用数据关注 gas 的波动gas 会受到当前网络情况的影响,交易频繁也会推高 gas price。

    75120

    容器和 Kubernetes 中的退出码完整指南

    容器终止,容器引擎使用退出码来报告容器终止的原因。...以下是容器使用的最常见的退出码: 退出名称含义0正常退出开发者用来表明容器是正常退出1应用错误容器因应用程序错误或镜像规范中的错误引用而停止125容器未能运行docker run 命令没有执行成功126...通常,您运行 docker pause 命令时会发生这种情况 Exited:Docker 容器已经被终止,通常是因为容器的进程被杀死了 一个容器达到 Exited 状态,Docker 会在日志中报告一个退出码...可能的原因是: 通过容器引擎杀死容器触发,例如使用 docker kill 命令; 由 Linux 用户向进程发送 kill -9 命令触发; 在尝试终止容器并等待 30 秒的宽限期后由 Kubernetes...一般来说,退出码 143 不需要故障排除。这意味着容器在主机指示后正确关闭。 退出码 255:退出状态超出范围 您看到退出码 255 ,意味着容器的 entrypoint 以该状态停止。

    5K20

    Python内置异常类型全面汇总

    通过子类化创建的两个不相关异常类永远是不等效的,既使它们具有相同的名称。 下列异常主要被用作其他异常的基类。...BaseException: 所有异常的基类 Exception(重点掌握) 所有内置的非系统退出类异常都派生自此类。 所有用户自定义异常也应当没打算自此类。...BufferError 与 缓冲区 相关的操作无法执行时将被引发。...LookupError 此基类用于派生映射或序列所使用的键或索引无效引发的异常: IndexError, KeyError 内置异常的层次结构 BaseException 所有异常的基类...NotADirectoryError 在不是目录的事物上请求目录操作 | +-- PermissionError 在没有访问权限的情况下运行操作 | +-- ProcessLookupError 进程不存在

    1.5K10

    Kubernetes故障排查指南-分析容器退出状态码

    Pod status 状态解释 [1] CrashLoopBackOff:容器退出,kubelet正在将它重启 InvalidImageName:无法解析镜像名称 ImageInspectError:无法校验镜像...转换公式如下,code 表现退出的状态码: 指定的退出状态码为负数,转换公式如下: 256 - (|code| % 256) 指定的退出状态码为正数,转换公式如下: code % 256 下面是异常状态码区间表...常见的容器退出状态码解释 [3] Exit Code 0 退出代码0表示特定容器没有附加前台进程退出代码是所有其他后续退出代码的例外 这不一定意味着发生了不好的事情。...比如:kubernetes job 在执行完任务后正常退出码为 0 Exit Code 1 程序错误,或者Dockerfile中引用不存在的文件,如 entrypoint中引用了错误的包 程序错误可以很简单...发生在与代码无法处理 SIGTERM 的情况下,docker进程等待十秒钟然后发出 SIGKILL 强制退出

    3.6K51

    强大的strace命令用法详解

    -f 跟踪目标进程,以及目标进程创建的所有子进程 -e 控制要跟踪的事件和跟踪行为,比如指定要跟踪的系统调用名称 -o 把strace的输出单独写到指定的文件 -s 系统调用的某个参数是字符串...实际上,通过分析,我们发现机器上别的服务有个监控脚本,它监控一个也叫做run.sh的进程发现run.sh进程数大于2,就会把它杀死重启。结果导致我们这个run.sh脚本被误杀。...进程被杀退出,strace会输出killed by SIGX(SIGX代表发送给进程的信号)等,那么,进程自己退出时会输出什么呢?...而进程创建和销毁的代价是相当高的,性能不差才怪。 总结 发现进程或服务异常,我们可以通过strace来跟踪其系统调用,“看看它在干啥”,进而找到异常的原因。...目标进程卡死在用户态,strace就没有输出了。 这个时候我们需要其他的跟踪手段,比如gdb/perf/SystemTap等。

    1.7K30

    Kubernetes 中容器的退出状态码参考指南

    什么是容器退出容器终止,容器引擎使用退出码来报告容器终止的原因。...以下是容器使用的最常见的退出码: 退出名称 含义 0 正常退出 开发者用来表明容器是正常退出 1 应用错误 容器因应用程序错误或镜像规范中的错误引用而停止 125 容器未能运行 docker run...通常,您运行 docker pause 命令时会发生这种情况 Exited:Docker 容器已经被终止,通常是因为容器的进程被杀死了 一个容器达到 Exited 状态,Docker 会在日志中报告一个退出码...可能的原因是: 通过容器引擎杀死容器触发,例如使用 docker kill 命令; 由 Linux 用户向进程发送 kill -9 命令触发; 在尝试终止容器并等待 30 秒的宽限期后由 Kubernetes...一般来说,退出码 143 不需要故障排除。这意味着容器在主机指示后正确关闭。 退出码 255:退出状态超出范围 您看到退出码 255 ,意味着容器的 entrypoint 以该状态停止。

    25810

    Spring Boot程序正确停止的姿势

    实践中通常将上述关闭进程的URL调用写到脚本中,同时还可以结合别的方式一起确保进程一定能退出,如下为脚本示例(pname指进程名称): #!...kill -15 $pid else # 通过名称方式查找到进程ID,使用信号量通知方式关闭进程 pid=`ps -ef |grep pname |grep -v...包添加为系统服务(在ubuntu18.04 LTS上实现,基于systemd) 1.假设将Spring Boot应用安装到/var/myapp目录下:将上述打包好的jar包拷贝到/var/myapp(目录不存在...写在最后 我在如何优雅地停止Java进程中有讲到如何实现在进程退出之前做一些收尾的工作,这在Spring Boot中同样适用,只需要监听对应的信号量并注册JVM关闭钩子即可。...RuntimeExeception或OOM时会触发关闭钩子的执行;但是在Spring Boot应用中,出现RuntimeException或OOM并不会触发关闭钩子的执行(Spring Boot使用了嵌入式

    3.1K20
    领券