如何正确在Linux Shell脚本中定义一个时间变量?
答案:1 悬赏:10 手机版
解决时间 2021-04-27 15:32
- 提问者网友:聂風
- 2021-04-27 04:47
如何正确在Linux Shell脚本中定义一个时间变量?
最佳答案
- 五星知识达人网友:第幾種人
- 2021-04-27 05:10
后面echo之前把下面这行再执行一遍不就行了:
LOG_TIME=`date +%H:%M:%S`
这只是一个变量而已,你不给他赋值他怎么会自己变化呢?追问定义一个变量,当然就是为了方便一处定义下面多处调用啊,如果下面再执行一遍那么定义这个变量就似乎没有意义了。
难道LOG_TIME第一次执行之后就变成了一个常量,而下面调用的时候就只获取这个常量,而不是获取当前的`date +%H:%M:%S`?追答大哥,你连变量和常量的区别都没有搞清楚。。
看一下你这个脚本的逻辑:
#!/bin/bash
LOG_TIME=`date +%H:%M:%S` # 取出当前的时间值,赋值给变量LOG_TIME
echo "脚本开始时间:"$LOG_TIME # 打印一下该变量的值
/bin/sleep 10 # 暂停10秒
echo "脚本结束时间:"$LOG_TIME # 再打印一下该变量的值
exit 1
你只是将一个变量的值打印了两遍,中间又没有修改变量的值,两次打印的结果为什么要不一样呢?追问大哥,别生气,气坏身子不好啦。。。我就是有疑问啦,既然是变量两次打印应该就不一样咯,既然一样我就打个比方当作赋值后变常量。。。我现在已经将所有的更改为`date +%H:%M:%S`了。。。`date +%H:%M:%S`本身是随时可以变化的。。。有其他方法动态的调用没?
LOG_TIME=`date +%H:%M:%S`
这只是一个变量而已,你不给他赋值他怎么会自己变化呢?追问定义一个变量,当然就是为了方便一处定义下面多处调用啊,如果下面再执行一遍那么定义这个变量就似乎没有意义了。
难道LOG_TIME第一次执行之后就变成了一个常量,而下面调用的时候就只获取这个常量,而不是获取当前的`date +%H:%M:%S`?追答大哥,你连变量和常量的区别都没有搞清楚。。
看一下你这个脚本的逻辑:
#!/bin/bash
LOG_TIME=`date +%H:%M:%S` # 取出当前的时间值,赋值给变量LOG_TIME
echo "脚本开始时间:"$LOG_TIME # 打印一下该变量的值
/bin/sleep 10 # 暂停10秒
echo "脚本结束时间:"$LOG_TIME # 再打印一下该变量的值
exit 1
你只是将一个变量的值打印了两遍,中间又没有修改变量的值,两次打印的结果为什么要不一样呢?追问大哥,别生气,气坏身子不好啦。。。我就是有疑问啦,既然是变量两次打印应该就不一样咯,既然一样我就打个比方当作赋值后变常量。。。我现在已经将所有的更改为`date +%H:%M:%S`了。。。`date +%H:%M:%S`本身是随时可以变化的。。。有其他方法动态的调用没?
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯