Bash脚本 - 从文件中添加值并减去

时间:2017-04-10 10:10:12

标签: bash shell ubuntu

我创建了一个脚本,它将1970年1月1日的秒数添加到名为datefile.txt的文件中。 IT看起来像这样:

echo $(date +%s) > datefile.txt

我现在要做的是从datefile.txt中读取该值,并从datefile.txt中存储的前一个值中减去当前值(当前秒数)。

我尝试了很多东西,但我缺乏bash语法和常识的知识。

最近的尝试:

d<datefile.txt
echo $(( d-date +%s ))

显然,这是一种迟钝的解决方案,因为它无法正常工作。

我在Ubuntu上运行它。

1 个答案:

答案 0 :(得分:0)

完成后:

echo $(date +%s) > datefile.txt

你可以这样做:

oldtime=$(<datefile.txt)
difference=$(( $(date +%s) - oldtime))

我假设您实际上想要从新值中减去旧值以获得正面结果。

$(<datefile.txt)扩展为文件的整个内容。

另外,请注意,当你想在算术表达式中使用命令的输出时,你必须用$()(命令替换)包含该命令,否则shell将不知道这是一个命令你想要执行,而不是需要直接读取的参数。