Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    166

    [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
    Balubeto

    Su Facebook, e` nato il gruppo SoftHard per tutti http://www.facebook.com/group.php?gid=52641062213&ref=nf . Vi aspetto.

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Mancano delle virgolette a partire da ...

    D:\Users\Public ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    166
    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
    Balubeto

    Su Facebook, e` nato il gruppo SoftHard per tutti http://www.facebook.com/group.php?gid=52641062213&ref=nf . Vi aspetto.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.