【发布时间】:2013-04-29 17:30:15
【问题描述】:
如何使用 BASH shell 创建一个 YYYMMDDHHMMSS 格式的日期时间戳的子目录?我正在使用mkdir ~/$(printf "%s" `date +"%Y%m%d%H%M%S"`),但最后不断收到无法打印的字符('?')。 Linux 2.6.18
【问题讨论】:
标签: linux bash date timestamp mkdir
如何使用 BASH shell 创建一个 YYYMMDDHHMMSS 格式的日期时间戳的子目录?我正在使用mkdir ~/$(printf "%s" `date +"%Y%m%d%H%M%S"`),但最后不断收到无法打印的字符('?')。 Linux 2.6.18
【问题讨论】:
标签: linux bash date timestamp mkdir
您不需要 printf 来删除换行符,$() 会为您做到这一点(请参阅 bash manual)
mkdir ~/$(date +"%Y%m%d%H%M%S")
要查看那些不可打印的字符是什么(你可能有一个尾随回车),试试这个:
for dir in 2013*; do printf "%s" "$dir" | od -c; done
【讨论】:
date +%Y%m%d%H%M%S 工作。撇号 (`) 不是单引号 (')
如何使用:
DIR_NAME="/Your_Path/"mydir`date +"%Y%m%d%H%M%S"`
or
printf `date +"%Y%m%d%H%M%S"`// Displaying 20130429173838
【讨论】:
date +%Y%m%d%H%M%S 工作。撇号 (`) 不是单引号 (')]