Precedente :: Successivo |
Autore |
Messaggio |
balubeto Dio minore
Registrato: 19/05/06 08:22 Messaggi: 757
|
Inviato: 15 Dic 2011 12:23 Oggetto: [PS] Powershell e programma dos con parametri |
|
|
Se in un script .ps1 scrivo:
Codice: |
Start-Process -FilePath "C:\Program Files (x86)\VMware\VMware Workstation\vmware-vdiskmanager.exe" -ArgumentList "-r D:\Users\Public\Documents\Virtual Machines\VM_template\VM_Windows_7_template\VM_Windows_7_template.vmdk -t 0 D:\Users\Public\Documents\VM_Windows_7_template.vmdk" -RedirectStandardOutput 'D:\Users\Public\Documents\output.txt'
|
tale utility mi mette in output.txt:
Codice: |
VMware Virtual Disk Manager - build 528992.
Usage: vmware-vdiskmanager.exe OPTIONS <disk-name> | <mount-point>
Offline disk manipulation utility
Operations, only one may be specified at a time:
-c : create disk. Additional creation options must
be specified. Only local virtual disks can be
created.
-d : defragment the specified virtual disk. Only
local virtual disks may be defragmented.
-k : shrink the specified virtual disk. Only local
virtual disks may be shrunk.
-n <source-disk> : rename the specified virtual disk; need to
specify destination disk-name. Only local virtual
disks may be renamed.
-p : prepare the mounted virtual disk specified by
the mount point for shrinking.
-r <source-disk> : convert the specified disk; need to specify
destination disk-type. For local destination disks
the disk type must be specified.
-x <new-capacity> : expand the disk to the specified capacity. Only
local virtual disks may be expanded.
-R : check a sparse virtual disk for consistency and attempt
to repair any errors.
-e : check for disk chain consistency.
-D : make disk deletable. This should only be used on disks
that have been copied from another product.
Other Options:
-q : do not log messages
Additional options for create and convert:
-a <adapter> : (for use with -c only) adapter type
(ide, buslogic, lsilogic). Pass lsilogic for other adapter types.
-s <size> : capacity of the virtual disk
-t <disk-type> : disk type id
Disk types:
0 : single growable virtual disk
1 : growable virtual disk split in 2GB files
2 : preallocated virtual disk
3 : preallocated virtual disk split in 2GB files
4 : preallocated ESX-type virtual disk
5 : compressed disk optimized for streaming
6 : thin provisioned virtual disk - ESX 3.x and above
The capacity can be specified in sectors, KB, MB or GB.
The acceptable ranges:
ide adapter : [1MB, 2040.0GB]
scsi adapter: [1MB, 2040.0GB]
ex 1: vmware-vdiskmanager.exe -c -s 850MB -a ide -t 0 myIdeDisk.vmdk
ex 2: vmware-vdiskmanager.exe -d myDisk.vmdk
ex 3: vmware-vdiskmanager.exe -r sourceDisk.vmdk -t 0 destinationDisk.vmdk
ex 4: vmware-vdiskmanager.exe -x 36GB myDisk.vmdk
ex 5: vmware-vdiskmanager.exe -n sourceName.vmdk destinationName.vmdk
ex 6: vmware-vdiskmanager.exe -r sourceDisk.vmdk -t 4 -h esx-name.mycompany.com \
-u username -f passwordfile "[storage1]/path/to/targetDisk.vmdk"
ex 7: vmware-vdiskmanager.exe -k myDisk.vmdk
ex 8: vmware-vdiskmanager.exe -p <mount-point>
(A virtual disk first needs to be mounted at <mount-point>)
|
Mentre se, dal Prompt dei comandi, scrivo:
Codice: |
"C:\Program Files (x86)\VMware\VMware Workstation\vmware-vdiskmanager.exe" -r "D:\Users\Public\Documents\Virtual Machines\VM_template\VM_Windows_7_template\VM_Windows_7_template.vmdk" -t 0 "D:\Users\Public\Documents\VM_Windows_7_template.vmdk"
|
questa utility fa il suo dovere.
Come mai?
GRAZIE
CIAO |
|
Top |
|
|
balubeto Dio minore
Registrato: 19/05/06 08:22 Messaggi: 757
|
Inviato: 15 Dic 2011 18:06 Oggetto: |
|
|
Ho scritto lo script:
Codice: |
# Script che converte un disco virtuale da Flat a Sparse di una macchina virtuale.
# Parametri da inserire in una riga di comando:
# $PathVMFlat Variabile che contiene il path di una VM di tipo Flat.
# $VMNameFlat Variabile che contiene il nome di una VM di tipo Flat.
# $PathVMSparse Variabile che contiene il path di una VM di tipo Sparse.
# $VMNameSparse Variabile che contiene il nome di una VM di tipo Sparse.
# param($PathVMFlat,$VMNameFlat,$PathVMSparse,$VMNameSparse)
$FlatSparseDisk = '"C:\Program Files (x86)\VMware\VMware Workstation\vmware-vdiskmanager.exe" ' + "-r " + $PathVMFlat + '\' + $VMNameFlat + ".vmdk -t 0 " + $PathVMSparse + '\' + $VMNameSparse + ".vmdk"
invoke-expression $FlatSparseDisk
|
ma, quando lo eseguo, ottengo:
Codice: |
D:\Users\Balubeto_Balubeto>powershell -ExecutionPolicy Unrestricted -file "D:\Us
ers\Public\Documents\Flat-Sparse_disk_VM.ps1" "D:\Users\Public\Documents\Virtual
Machines\VM_template\VM_Windows_7_template" "VM_Windows_7_template.vmdk" "D:\Us
ers\Public\Documents" "VM_Windows_7_template.vmdk"
Invoke-Expression : Specificare un'espressione di valore sul lato destro dell'o
peratore '-'.
In D:\Users\Public\Documents\Flat-Sparse_disk_VM.ps1:14 car:18
+ invoke-expression <<<< $FlatSparseDisk
+ CategoryInfo : ParserError: (:) [Invoke-Expression], ParseExcep
tion
+ FullyQualifiedErrorId : ExpectedValueExpression,Microsoft.PowerShell.Com
mands.InvokeExpressionCommand
D:\Users\Balubeto_Balubeto>
|
Dove sbaglio?
GRAZIE
CIAO |
|
Top |
|
|
|
|
Non puoi inserire nuovi argomenti Non puoi rispondere a nessun argomento Non puoi modificare i tuoi messaggi Non puoi cancellare i tuoi messaggi Non puoi votare nei sondaggi
|
|