windows - 带有创建时间和最后修改时间的目录命令

标签 windows command-line cmd

我想使用 dir 命令并将文件名作为第一列,创建日期时间作为第二列,修改日期时间作为第三列。

我怎样才能做到这一点?

http://www.computerhope.com/dirhlp.htm

这表明可以使用 /T 但不确定如何使用它,因为 dir/TCAW 没有列出我需要的格式。

最佳答案

正如 Christopher Painter 所说,DIR 命令不能直接执行此操作。

但是有一个简单的命令行 one liner 可以显示没有页眉或页脚信息的信息。此命令仅列出文件。只要您所在的地区使用 3 个空格分隔的组件显示时间戳,它就可以工作。例如,我的美国时间戳显示为 mm/dd/yyyy hh:mm:ss am

for /f "tokens=1-4*" %A in ('dir /a-d /tc^|findstr "^[0-9]"') do @echo %E  %A %B %C  %~tE

如果要包含目录,请将 /a-d 更改为 /a。或者,如果您同时需要文件和目录,但又想排除隐藏文件和系统文件/目录,则只需完全删除 /a-d

下面是格式良好的批处理脚本中的相同命令:

@echo off
for /f "tokens=1-4*" %%A in (
  'dir /a-d /tc^|findstr "^[0-9]"'
) do echo %%E  %%A %%B %%C  %%~tE

我不喜欢文件名在前面的输出格式,因为名称的宽度各不相同——很难读取输出,因为列没有对齐。我更喜欢把文件名放在最后:

@echo off
for /f "tokens=1-4*" %%A in (
  'dir /a-d /tc^|findstr "^[0-9]"'
) do echo %%A %%B %%C  %%~tE  %%E

关于windows - 带有创建时间和最后修改时间的目录命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27647484/

相关文章:

windows - "For"和 "usebackq"不使用反引号

java - 使用 mailto : 时 Outlook 不处理多字节字符

linux - 如何在 Git Bash 上初始化 bashrc

c - 为什么 OSX 命令行中使用 Bash

java - 如何在带有参数的cmd中运行java程序

windows - 如何使用特定程序打开目录具有特殊字符的特定文件?

linux - Putty 作为 cmd 和 sh 之间的接口(interface)

python - 网络共享列表

java - 将自定义文件扩展名与 Windows 中的 Java 应用程序相关联

正则表达式使用 grep 匹配尽可能少的次数(惰性)