Board logo

标题: [文件操作] [已解决]批处理如何获得当前文件夹里每个文件的名称和大小? [打印本页]

作者: crownking1983    时间: 2016-3-12 17:20     标题: [已解决]批处理如何获得当前文件夹里每个文件的名称和大小?

本帖最后由 crownking1983 于 2016-3-13 12:43 编辑

比如一个文件夹里有文件 001.jpg  002.rar  003.zip等等
双击执行bat命令后,自动列出报告如下

001.jpg  114125字节
002.rar  458697字节
003.zip  785463字节
等等
作者: ivor    时间: 2016-3-12 18:05

本帖最后由 ivor 于 2016-3-12 18:22 编辑

回复 1# crownking1983
  1. dir *.* -force | %{ "$_"+"`t"+$_.Length+'字节'} | Out-File -FilePath ./list.txt
复制代码

作者: pcl_test    时间: 2016-3-12 18:24

%%~nxi %%~zi
作者: cph1983    时间: 2016-3-12 18:42

for /f "delims=" %%i in ('dir /a-d /b *.*') do (  
echo %%i %%~zi字节
)
作者: crownking1983    时间: 2016-3-12 21:43

没有人可以帮帮我么 上面三个大哥写的很深奥 复制到bat里无效果啊
作者: happy886rr    时间: 2016-3-12 21:55

本帖最后由 happy886rr 于 2016-3-12 22:01 编辑

回复 5# crownking1983
  1. dir /a-d & pause
复制代码
啥都有了
作者: crownking1983    时间: 2016-3-12 23:06

回复 6# happy886rr


    我要那么多信息干嘛 如果只需要这么简单一个命令 我还用得着来这里问吗?百度上一搜一大堆。
我需要的是每个文件的名称和大小然后按“文件名 空格 大小”这样的格式自动列到文本里, 这只是我整个系统中的一个步骤,没有特殊用意不会来这里问的。
作者: codegay    时间: 2016-3-12 23:18

回复 7# crownking1983


    情商智商双低。
作者: crownking1983    时间: 2016-3-12 23:27

回复 8# codegay


    你跟一个学财务做会计师的楼主讲智商情商?我又不是学计算机的,跟你们又不是一个专业的,要是我跟你唠资金平衡原理你听得懂吗?
作者: codegay    时间: 2016-3-12 23:51

回复 9# crownking1983


    其实我初中毕业的。
作者: codegay    时间: 2016-3-13 00:00

  1. """
  2. python获取每个文件的名称和大小.py
  3. http://bbs.bathome.net/thread-39660-1-1.html
  4. 2016年3月12日 23:52:29 codegay
  5. """
  6. import os
  7. [print(os.path.basename(r),str(os.path.getsize(r))+"我知道你很不爽,你咬我啊") for r in os.listdir(".") if os.path.isfile(r)]
  8. input()
复制代码

作者: crownking1983    时间: 2016-3-13 10:57

回复 11# codegay


    烂水平,这么简单都写不出来还跟我拽?最后还是找我的小外甥帮忙搞定的,现在复制给你看看 学着点儿
@for /f "tokens=3,4*" %%i in ('dir /a-d^|find ":"') do @echo %%i %%j >> 我小外甥教你写bat.txt
作者: codegay    时间: 2016-3-13 11:21

回复 12# crownking1983

    明明是你写不出来好吧。楼上贴着我的代码呢。你这睁眼说瞎话找平衡的能力也是可以的。
作者: codegay    时间: 2016-3-13 11:51

三行三种方法,第三种用的就是3楼版主的方法。
  1. """
  2. python获取每个文件的名称和大小.py
  3. http://bbs.bathome.net/thread-39660-1-1.html
  4. 2016年3月12日 23:52:29 codegay
  5. """
  6. import os
  7. import glob
  8. import subprocess
  9. [print(os.path.basename(r),str(os.path.getsize(r))+"我知道你很不爽,你咬我啊") for r in os.listdir(".") if os.path.isfile(r)]
  10. [print(os.path.abspath(r),os.path.getsize(r),"字节") for r in glob.glob("*") if os.path.isfile(r)]
  11. [print(subprocess.getoutput(r"""echo off&for %i in (*.*) do (echo %~nxi %~zi)"""),)]
  12. input()
复制代码

作者: crownking1983    时间: 2016-3-13 12:02

回复 14# codegay


    啧啧 突然发现水平不如我家小外甥有点难堪?别BB了,我知道你很不爽,你咬我啊
作者: codegay    时间: 2016-3-13 12:12

回复 15# crownking1983

   别想太多。有机会练代码我就写了。
作者: pcl_test    时间: 2016-3-13 13:06

回复 15# crownking1983


    要么安安静静地坐等别人给你代码,要么别在这发帖求助;求人不如自助,没有网友有义务回答你问题、顺你的意,求人办事要有求人的态度以及相应的心理承受力,另外,论坛的主旨从来都不是“帮你做”,而是“教你怎么做”,在你求助前就该明白这点。
作者: codegay    时间: 2016-3-13 13:37

  1. #julia 版 codegay 2016年3月13日 13:35:54
  2. for r=readdir()
  3.     f=stat(r).size
  4.     println("文件名:$r $f  字节");
  5. end
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2