Shell 每15秒以当前时间为名称创建一个新文件并放入目录

Shell 每15秒以当前时间为名称创建一个新文件并放入目录,shell,Shell,创建一个名为now.bash的shell脚本,该脚本运行一分钟。每15秒,shell脚本应在名为now的子目录中创建一个文件,该子目录的当前时间名称为YYYY-MM-DD_HH.MM.SS.now。此文件中应包含语句“It now is YYYY-MM-DD_HH.MM.SS” 这是分配给我的问题陈述 这是到目前为止我的代码 #!/bin/bash start=$SECONDS END=$((SECONDS+60)) while [ $SECONDS -lt $END ] do CTIMEE

创建一个名为now.bash的shell脚本,该脚本运行一分钟。每15秒,shell脚本应在名为now的子目录中创建一个文件,该子目录的当前时间名称为YYYY-MM-DD_HH.MM.SS.now。此文件中应包含语句“It now is YYYY-MM-DD_HH.MM.SS”

这是分配给我的问题陈述

这是到目前为止我的代码

#!/bin/bash

start=$SECONDS
END=$((SECONDS+60))

while [ $SECONDS -lt $END ]
do
CTIMEE=$(date +"%r")
sleep 15
echo "It is now $CTIMEE" # > /now/${CTIMEE}.now
done

我的问题是,我得到了一个模糊的错误,我想我必须递归地创建文件,但接下来的问题是如何做,并将其保存到日期是文件名的位置,所有文件都打印到目录中

这可能是因为
日期+%r
的输出包含空格,这使得你的
/now/${CTIMEE}。now
有点破碎。要么引用文件名(即,
“/now/${CTIMEE}.now”
),要么使用不同的时间格式,如
日期+Y%m%d%H%m%d
。尝试了这一点和不同的组合,我得到的输出是:./now.bash:line 10:/home/students/22626/erodgers0523/lab17/now/20131120164611/20/13。现在:没有这样的文件或目录。。。最后一个%D应该是%S秒。。。尝试
man date
查找有效的格式说明符…太棒了,成功了,谢谢!