none
Powershell - creazione ricorsiva cartelle RRS feed

  • Domanda

  • Ciao,
    dovrei creare una cartella in maniera ricorsiva.
    ho scritto questo script ma continnua a creare le cartelle nel posto sbagliato ...
    Get-ChildItem c:\tmp |
    
    ForEach-Object { Get-item $_.FullName | Where-Object {$_.PSIsContainer} | new-item -name GesOff -type directory -WhatIf}

    e invece continnua a crearmi

    WhatIf: Esecuzione dell'operazione "Crea directory" sulla destinazione "Destinazione: C:\Users\mioutente\GesOff".
    

     

    dove sbaglio??

    lunedì 6 dicembre 2010 11:54

Risposte

  • Scusate se rispondo qui, anche se confermo che sei OT.

    lo script viene eseguito nella working directory in cui ti trovi all'inizio dello script.

    usa l'opzione -path del comando new-item per dirigere correttamente gli elementi creati.

     

    se usi: get-help new-item -examples vedi un esempio che fa al caso tuo...

     

    HTH

    Ciao


    Diego Castelli - MCSA 2003, MCP ISA 2004, MCTS Forefront. ITA: Questo post è fornito "così com'è". Non conferisce garanzie o diritti di alcun tipo. Ricorda di usare la funzione "segna come risposta" per i post che ti hanno aiutato a risolvere il problema e "deseleziona come risposta" quando le risposte segnate non sono effettivamente utili. Questo è particolarmente utile per altri utenti che leggono il thread, alla ricerca di soluzioni a problemi similari. ENG: This posting is provided "AS IS" with no warranties, and confers no rights. Please remember to click "Mark as Answer" on the post that helps you, and to click "Unmark as Answer" if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.
    • Proposto come risposta Diego Castelli lunedì 6 dicembre 2010 12:26
    • Contrassegnato come risposta Fabrizio Volpe martedì 7 dicembre 2010 11:00
    lunedì 6 dicembre 2010 12:25
  • confermo per i posteri.

    in questo caso era necessario usare il parametro -path con la variabile.

    questo è il mio script. [o meglio quello di Cobisi dal suo sito :)  ]

    Get-ChildItem c:\tmp |
    Where-Object {$_.PSIsContainer}|
    ForEach-Object {new-item  -name GesOff -type directory -path $_.fullname -WhatIf -ErrorAction SilentlyContinue
    }

    • Contrassegnato come risposta Dario Bonini martedì 7 dicembre 2010 10:54
    martedì 7 dicembre 2010 10:54

Tutte le risposte

  • Sei ot in questo forum. ti conviene chiedere qui

    http://social.technet.microsoft.com/Forums/en-US/winserverpowershell/threads

    ciao.



    Edoardo Benussi - Microsoft® MVP
    Management Infrastructure - Systems Administration
    https://mvp.support.microsoft.com/Profile/Benussi
    Windows Server Italian Forum Moderator
    edo[at]mvps[dot]org
    lunedì 6 dicembre 2010 12:09
    Moderatore
  • Scusate se rispondo qui, anche se confermo che sei OT.

    lo script viene eseguito nella working directory in cui ti trovi all'inizio dello script.

    usa l'opzione -path del comando new-item per dirigere correttamente gli elementi creati.

     

    se usi: get-help new-item -examples vedi un esempio che fa al caso tuo...

     

    HTH

    Ciao


    Diego Castelli - MCSA 2003, MCP ISA 2004, MCTS Forefront. ITA: Questo post è fornito "così com'è". Non conferisce garanzie o diritti di alcun tipo. Ricorda di usare la funzione "segna come risposta" per i post che ti hanno aiutato a risolvere il problema e "deseleziona come risposta" quando le risposte segnate non sono effettivamente utili. Questo è particolarmente utile per altri utenti che leggono il thread, alla ricerca di soluzioni a problemi similari. ENG: This posting is provided "AS IS" with no warranties, and confers no rights. Please remember to click "Mark as Answer" on the post that helps you, and to click "Unmark as Answer" if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.
    • Proposto come risposta Diego Castelli lunedì 6 dicembre 2010 12:26
    • Contrassegnato come risposta Fabrizio Volpe martedì 7 dicembre 2010 11:00
    lunedì 6 dicembre 2010 12:25
  • Sei ot in questo forum. ti conviene chiedere qui

    http://social.technet.microsoft.com/Forums/en-US/winserverpowershell/threads

    ciao.

     

    ok grazie..

    ??? a quando una sezione in ITALICO dedicato a powershell ??  :)

    ciao!

    martedì 7 dicembre 2010 10:51
  • confermo per i posteri.

    in questo caso era necessario usare il parametro -path con la variabile.

    questo è il mio script. [o meglio quello di Cobisi dal suo sito :)  ]

    Get-ChildItem c:\tmp |
    Where-Object {$_.PSIsContainer}|
    ForEach-Object {new-item  -name GesOff -type directory -path $_.fullname -WhatIf -ErrorAction SilentlyContinue
    }

    • Contrassegnato come risposta Dario Bonini martedì 7 dicembre 2010 10:54
    martedì 7 dicembre 2010 10:54