如何使用unix shell脚本将任何日期转换为YYYYMMDDHHMMSS
?
它不是任何日期的具体日期。如何转换呢?
示例日期格式为:20110101050603
由于 Puspa
答案 0 :(得分:3)
DATE = "15 Jun 2015 10:10:10"; date -d"$DATE" +%Y%m%d%H%M%S
输出: -
20150615101010
More on Dates
请注意,这仅适用于GNU日期
我读过:
Solaris版本的日期,无法支持-d可以通过替换sunfreeware.com版本的日期来解决。
<强>更新: - 强>
使用ls
命令查找所有文件,并对所有文件使用grep
命令。
ls | grep "[0-9]{14}"
grep
命令也接受正则表达式
但它不会准确验证您的文件。例如,如果文件名是20151835101010
,则它将验证此文件。但实际上月份和日期都是错误的
所以我的建议是编写一个shell脚本来识别有效的文件名,并通过逐个处理找到最旧的文件名。