当前位置: 首页 > 面试题库 >

Bash脚本中的变量,使它从上次运行起就保持其值

阮雅达
2023-03-14
问题内容

我可以创建具有持久变量值的Bash脚本吗?

例如,当脚本第一次运行时(在特定时间限制内),我将变量初始化为0,并且每次脚本运行时,变量都会自动增加。


问题答案:

不能,但是可以使用文件来完成

#!/bin/sh

# if we don't have a file, start at zero
if [ ! -f "/tmp/value.dat" ] ; then
  value=0

# otherwise read the value from the file
else
  value=`cat /tmp/value.dat`
fi

# increment the value
value=`expr ${value} + 1`

# show it to the user
echo "value: ${value}"

# and save it for next time
echo "${value}" > /tmp/value.dat


 类似资料:
  • 问题内容: 有什么方法可以将结果变量保留在内存中,因此我不必每次运行脚本的开头都重新计算它?每次运行脚本时,我都会对数据集(从磁盘上读取)进行一系列(5-10秒)的确切操作。这不会有太大问题,因为我非常擅长使用交互式编辑器在两次运行之间调试代码。但是有时交互功能只是不切实际。 我知道我可以将结果写到磁盘上的文件中,但是如果可能的话,我想避免这样做。这应该是一个解决方案,它在我第一次运行脚本时会生成

  • 问题内容: 我的以下代码有问题: callBash.py: sleep.sh: 我希望10秒钟后打印“结束”。(我知道这是一个愚蠢的示例,我可以简单地在python中睡眠,但是这个简单的sleep.sh文件只是作为测试) 问题答案: 使sleep.sh可执行并添加到参数列表中(如先前答案中所建议)可以正常工作。根据搜索路径,您可能还需要添加或其他合适的路径。(即,更改为。) 如果bash脚本的第一

  • 问题内容: 我想尝试使用npm为Web应用程序运行各种构建任务。我知道我可以这样添加一个字段来做到这一点: 当您使用带有许多选项的更复杂的命令时,这变得很笨拙。是否有可能将这些命令移至bash脚本或类似的东西?就像是: 在文件中的哪里执行命令? 阅读这篇文章似乎是这样,但是我不清楚我应该在哪里放置文件或者丢失了什么。 问题答案: 完全有可能… 另外,请确保在bash文件的顶部放置一个哈希爆炸 还请

  • 我有个 bash 脚本,伪代码如下: 我想请问一下我第二次 export https_proxy 能达到清空这个变量的值的目的吗?因为之后的下载我不想走代理,我这个写法能否达到我的期望呢?谢谢。

  • 问题内容: 我有一个bash脚本a.sh,其中有一个python脚本b.py。python脚本计算某些内容,我希望它返回一个值,该值稍后将在a.sh中使用。我知道我能做 在a.sh中: 在b.py中: 但这不是那么方便,因为我还在b.py中打印了其他消息 有什么更好的方法吗? 编辑: 我现在正在做的只是 这意味着我可以在b.py中打印很多东西,但是只有最后一行(假设它不包含“ \ n”,这是最后一

  • 问题内容: 我正在尝试从我的Perl程序中运行Bash命令。但是Perl似乎使我的Bash $ PWD环境变量与Perl变量混淆了。 我如何才能将其全部读取为字符串? 这就是我要运行的 这些反引号在Bash中运行第二行。使用System()会产生相同的问题。 有任何想法吗? 问题答案: 这里有两个查询,关于使用Bash变量和运行外部命令。 Perl中有哈希,带有环境变量 但是,通常最好在脚本中使用