Solved

MSDOS script needed : diskpart/s in one script & output to 'hstname'.txt

Posted on 2008-10-27
2
4,413 Views
Last Modified: 2012-06-27
Hi

I would like a .bat or .cmd script that do :
a) date/t >> hostname.txt
b) sc queryex >> hostname.txt
c) echo ==========  >> hostname.txt
d) diskpart/s  scriptname >> hostname.txt


where hostname is the server's hostname as obtained by the
command "hostname".  So if my server's hostname  is Atlanta,
then the output file is  Atlanta.txt

Also, "diskpart/s scriptname"  requires a separate file scriptname
& this separate file scriptname contains two lines :
LIST VOLUME
LIST DISK
SELECT DISK 0  
LIST PARTITION
SELECT DISK x  (other any other disks that are present)
LIST PARTITION
... repeat till all disks present have been selected one by one & partition listed ...

diskpart/s scriptname currently gives following output (as there's only 1 disk in my
current server but other servers may have more disks) :

Microsoft DiskPart version 5.1.3565
Copyright (C) 1999-2003 Microsoft Corporation.
On computer: CORE2
  Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
  Volume 0     D                       DVD-ROM         0 B
  Volume 1     E   Mobile Part  CDFS   CD-ROM      7168 KB
  Volume 2     C                NTFS   Partition     70 GB  Healthy    System

  Disk ###  Status      Size     Free     Dyn  Gpt
  --------  ----------  -------  -------  ---  ---
  Disk 0    Online        73 GB      0 B

Disk 0 is now the selected disk.

  Partition ###  Type              Size     Offset
  -------------  ----------------  -------  -------
  Partition 1    OEM                 47 MB    32 KB
  Partition 2    Primary             70 GB    47 MB
  Partition 3    Unknown           3075 MB    70 GB


Would like to incorporate the above 2 lines of codes into the parent
script so that there's only one file to copy to each server instead of
two files (one parent script & the scriptname file)
0
Comment
Question by:sunhux
2 Comments
 

Author Comment

by:sunhux
ID: 22813235
If it's not possible to do it in one single script file (one .cmd or one .bat),
multiple files solution is acceptable too.

Just some corrections (indicated by *)  to my earlier typo to one paragraph above :

Also, "diskpart/s scriptname"  requires a separate file scriptname
& this separate file scriptname contains two lines :
LIST VOLUME
LIST DISK
SELECT DISK 0  
LIST PARTITION
SELECT DISK x  (* any other disks that are present)
LIST PARTITION
... repeat till all disks present have been selected &  partition listed*  ...
0
 
LVL 38

Accepted Solution

by:
Shift-3 earned 500 total points
ID: 22813449
Paste the script below into a text file with a .cmd extension.  Running it will create diskpart scripts on the fly and then delete them when done.  Output will be echoed to a text file named with the current computername.


@echo off

setlocal
 

set script1=%temp%\dpscript1.txt

set script2=%temp%\dpscript2.txt

set log=%computername%.txt
 

echo LIST DISK>"%script1%"

echo LIST VOLUME>"%script2%"

echo LIST DISK>>"%script2%"
 

for /F "tokens=2 skip=8" %%G in ('diskpart /s "%script1%"') do (

 echo SELECT DISK %%G>>"%script2%"

 echo LIST PARTITION>>"%script2%"

)
 

date /t>"%log%"

sc queryex>>"%log%"

echo ==========>>"%log%"

diskpart /s "%script2%">>"%log%"
 

del "%script1%"

del "%script2%"

Open in new window

0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

One of my most closely kept secrets is revealed in this discussion How to output text on the same line This question was recently posted in EE by Simon336697 (http://www.experts-exchange.com/Programming/Languages/Scripting/Shell/Batch/Q_2459…
You may have already been in the need to update a whole folder stucture using a script. Robocopy does it well and even provides a list of non-updated files in a log (if asked to). Generally those files that were locked by a user or a process by the …
This is used to tweak the memory usage for your computer, it is used for servers more so than workstations but just be careful editing registry settings as it may cause irreversible results. I hold no responsibility for anything you do to the regist…
In this video I am going to show you how to back up and restore Office 365 mailboxes using CodeTwo Backup for Office 365. Learn more about the tool used in this video here: http://www.codetwo.com/backup-for-office-365/ (http://www.codetwo.com/ba…

867 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now