Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 如何创建一个批处理文件,该批处理文件在文件夹中创建一个文件列表,以及上次访问的日期和大小?_Batch File - Fatal编程技术网

Batch file 如何创建一个批处理文件,该批处理文件在文件夹中创建一个文件列表,以及上次访问的日期和大小?

Batch file 如何创建一个批处理文件,该批处理文件在文件夹中创建一个文件列表,以及上次访问的日期和大小?,batch-file,Batch File,如何创建一个批处理文件,该批处理文件在文件夹中创建一个文件列表,以及上次访问的日期和大小 到目前为止,我的代码如下: dir /b /s > fileslist.txt 并在批处理文件所在的文件夹中创建内容列表,如下所示: C:\Users\UserOne\Documents\3D Designs C:\Users\UserOne\Documents\Adobe C:\Users\UserOne\Documents\AirDroid C:\Users\UserOne\Documents\

如何创建一个批处理文件,该批处理文件在文件夹中创建一个文件列表,以及上次访问的日期和大小

到目前为止,我的代码如下:

dir /b /s > fileslist.txt
并在批处理文件所在的文件夹中创建内容列表,如下所示:

C:\Users\UserOne\Documents\3D Designs
C:\Users\UserOne\Documents\Adobe
C:\Users\UserOne\Documents\AirDroid
C:\Users\UserOne\Documents\Amazon Downloader Logs
C:\Users\UserOne\Documents\AppScan
C:\Users\UserOne\Documents\Audacity

这应该更接近您想要的:

@echo off
for /f "skip=5 tokens=1-4*" %%A in ('dir /ta /s /a-d') do (
    if "%%A" NEQ "Directory" if "%%E" NEQ "" if "%%B" NEQ "Dir(s)" echo %%E ^|^| %%A %%B %%C %%D
)
pause
输出:

C:\fileName.ext || 2017/10/4 00:00 AM 42
该守则规定:

  • 获取文件和文件夹的列表
  • 整理必需品
  • 以适当的格式输出它们
    • C:\fileName.ext | |[上次访问日期时间][字节计数]
    • C:\folderToTest | |[上次访问日期时间]

这个命令怎么样
dir/s/b/o:ds/A-D>fileslist.txt
不是,我在找什么?我喜欢它列出文件的方式,但它不显示上次访问的日期以及文件或文件夹的大小。没有一个本机命令可以在一行中显示路径+文件名+大小+日期。如果您使用@Hackoo中的命令并省略
/b
,它将使您接近所需。虽然该日期是上次修改的日期,但不是上次访问日期。每个文件夹都会被提及,所有文件都会被显示,文件大小和文件夹大小都会被显示…@dbenham知道了如何做到你所要求的:非常好的解决方案。@JamesL.:谢谢。您知道
%%~tG
是否给出上次修改日期或上次访问日期吗?带有
%%~tG
for
命令会提取上次修改的时间,即使您将
/tc
添加到
dir
命令中。我创建了一个文件夹(
c:\y
),并向其中复制了两个文件。从中,我尝试了这个命令
wmic数据文件,其中“drive='c:'和path='y\\'”获取名称、上次访问、大小
,它正确地提取了这两个文件的大小、上次访问日期和文件名。前面的链接显示了如何对多个路径执行此操作。我不会以我自己的答案发表文章,因为@dbenham确实值得称赞。@JamesL:我使用了
dir/tc
并修改了我的脚本,因此它现在可以输出访问时间。你可以将
/a-d
添加到
dir
命令中,以消除
文件夹。
/s
仍会遍历子文件夹。