首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bash别名在文件名中使用当前时间戳创建文件

Bash别名在文件名中使用当前时间戳创建文件
EN

Stack Overflow用户
提问于 2014-06-16 03:40:26
回答 2查看 5.2K关注 0票数 8

我正在尝试创建一个bash别名,它将在每次调用别名时打印当前的UNIX时间戳。在我的bash简介中有以下几点:

代码语言:javascript
复制
alias unix="echo "$(date +%s)""

但是,当前的unix时间戳似乎是在bash配置文件来源之后立即存储的,而且每次调用别名时都不会更改。

例如,如果我隔10秒钟调用unix别名3次,输出总是相同的。如何创建别名,以便在调用别名时计算unix时间戳。这个是可能的吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-06-16 03:44:48

使用单引号防止立即扩展。

代码语言:javascript
复制
alias unix='echo $(date +%s)'

更新:虽然我很高兴能够解释单引号和双引号之间的不同扩展行为,但也请参阅Robby Cornelissen的另一个答案,以获得更有效的结果。echo在这里是不必要的,因为它只输出date本身已经输出的内容。因此,date不需要在子subshell中运行。

票数 13
EN

Stack Overflow用户

发布于 2014-06-16 03:43:44

代码语言:javascript
复制
$ alias unix="date +%s"
$ touch myfile.$(unix)
$ touch myfile.$(unix)
$ ls -l myfile*
-rw-r--r--  1 rbednark  wheel  0 Apr 11 21:46 myfile.1460436366
-rw-r--r--  1 rbednark  wheel  0 Apr 11 21:46 myfile.1460436368
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24236362

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档