我想使用 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/