file size via cmd/bat or vbs in terms of MBs

Hi;

I need a script bat/cmd/vbs that sorts the files of C drive in terms of MB on command prompt.

I don't need an installer solution like TreeSize.

Is there any in place?

Regards.
LVL 12
jazzIIIloveAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Brian PringleSystems Analyst II, SCM, ERPCommented:
What are you trying to accomplish?  If you are trying to get a list of all files on the hard drive within all folders, you can open an administrative command prompt and issue the following command.

dir /a /s /os

/a --> Show all files
/s --> Show files in all subfolders
/os --> Order the files by size (can also use /o-s)

Is that what you are needing?

If you want, you can write that out to a file by changing it to

dir /a /s /os > c:\dirList.txt
0
Steve KnightIT ConsultancyCommented:
There is a portable tree size util which can run without installing afaik.  If you want batch or VBScript I have a few batches that may be of use here, e.g. second two show you the biggest 20 files in a directory and subdirs you choose, first one total size in subdir.

http://scripts.dragon-it.co.uk/links/batch-subdir-folder-size
http://scripts.dragon-it.co.uk/links/batch-biggest-files-in-folders
http://scripts.dragon-it.co.uk/links/vbscript-biggest-files-in-folders

You can sort files by size but only in one dir from a dir command.  If you add /s it will sort them within each dir.

dir /o-s

If you really want to you can get a CSV file of any directory structure of all files with something like this which you could put in excel etc:

@echo off
pushd c:\startdir
for /f "tokens=*" %%F in ('dir /b /a-d /s') do echo "%%~dpF","%%~fxF",%%~zF > "%userprofile%\desktop\file-list.csv"
popd
start "" "%userprofile%\desktop\file-list.csv"

Powershell if OK gives other options

Steve
0
Steve KnightIT ConsultancyCommented:
0
Creating Active Directory Users from a Text File

If your organization has a need to mass-create AD user accounts, watch this video to see how its done without the need for scripting or other unnecessary complexities.

jazzIIIloveAuthor Commented:
A 3rd party program is out of question but i will give a try for the script. My aim is to see sorted files and folders w.r.t size
0
jazzIIIloveAuthor Commented:
Hi;

I used;

@echo off
pushd c:\startdir
for /f "tokens=*" %%F in ('dir /b /a-d /s') do echo "%%~dpF","%%~fxF",%%~zF > "%userprofile%\desktop\file-list.csv"
popd
start "" "%userprofile%\desktop\file-list.csv"

to use it I created a startdir directory as it was giving an error on line 2. I also created file-list.csv but now it gives file not found error on console. Am i missing something?

Regards.
0
Steve KnightIT ConsultancyCommented:
Sorry I should have said the "pushd" line was to take it to the directory under which you wanted the info.  If you want the whole C: drive then it is going to make you a file with one line per file on the whole dir.  If you wan that change the line to

pushd c:\

Steve
0
jazzIIIloveAuthor Commented:
Hi Steve;

Seems fine except for the bytes. I want to have it MB and I added the /1048576 but it is treated as string. Any remedy?

Regards.
0
Steve KnightIT ConsultancyCommented:
You could use formulas that turn it into value:

=VALUE(C1/1024/1024)

or we could turn it into Mb in the batch file, or indeed if only files over certain size interested then include those?

Are you only wanting, say, files over 10Mb etc?

Steve
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Steve KnightIT ConsultancyCommented:
Another way since we are talking Excel... if that is acceptable a few lines of VBA could scan down a directory structure and populate a spreadsheet for you.  Say what you are after and will see what I can knock up.

Steve
0
Steve KnightIT ConsultancyCommented:
if you do want to look at other ways just say... exceand macros in vba is great way of finding info and presenting it...
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
VB Script

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.