macos - 在 mac bash 上格式化修改文件的日期/时间?

标签 macos bash datetime bsd last-modified

在 mac (snow leopard) 上的 bash 脚本中,我有一个路径和文件名,我需要获取该文件的修改日期/时间。我发现我可以做到:
stat -f "%m"$MYFILE

但是,这会返回我假设的纪元日期/时间。我需要格式化的日期/时间:YYYYMMDDThhmmss。我发现了各种显然依赖于 GNU 的选项(如 date),而我的 mac 上没有。

在 mac(BSD?)bash 上以用户指定的格式修改文件的日期/时间的标准方法是什么。或者至少,我可以将上面的 stat 调用的结果传递给一个日期/时间格式化函数。

最佳答案

它实际上非常简单,但与 GNU date 有很大不同,因此它远非显而易见:

date -r $TIMESTAMP +%Y%m%dT%H%M%S

获取 stat 进行格式化:

stat -f "%Sm" -t "%Y%m%dT%H%M%S" FILE

关于macos - 在 mac bash 上格式化修改文件的日期/时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12169710/

相关文章:

cocoa - NSServices 不工作

python - 无法在 MacOS 上 pip 安装 scikits.talkbox

bash - 为 Mercurial (hg) 启用 bash 选项卡补全

php -/web/bundles 下的 Assets 在 Symfony2 生产中找不到

python - 循环Python脚本如何检测当前时间是否在某个小时:minute time range?

PHP 日期时间值的 secondaryi 和 now() 与 mysql 的区别

macos - 在 OS X 中通过 perl 控制鼠标

ruby-on-rails - 将 config/database.yml 的用户名更改为与您的 OSX 用户帐户相同

linux - 如何使用多个 cat 输入运行多个 for 循环

android - Kotlin - SimpleDateFormat 解析需要无限时间