Así que tengo un cmdlet llamado update-name que no tengo acceso para cambiar.PowerShell: ¿cómo puedo llamar a un cmdlet en una función al anular el nombre de ese cmdlet con el mismo nombre que la función?
He creado una función llamada update-name (el mismo nombre que el cmdlet). ¿Cómo llamo al cmdlet de la función con el mismo nombre?
He intentado algunas cosas y ninguna de ellas parece funcionar.
function update-name {
param([string] something)
#call cmdlet update-name here
}
Hay una manera de hacerlo cuando es sólo funciones:
$unBackup = 'DefaultUpdateName'
if(!(Test-Path Function:\$unBackup)) {
Rename-Item Function:\Update-Name $unBackup
}
function update-name {
& $unName
}
desgracia que no funciona si se trata de un cmdlet.
¿Es mejor seguir este camino o la ruta de la respuesta que he recibido fuera de Twitter (en alguna parte de este conjunto de respuestas)? – ferventcoder
Ambos funcionarán a menos que tenga varios cmdlets con el mismo nombre, en cuyo caso 'Get-Command -Type Cmdlet' devolverá resultados múltiples. Prefiero el enfoque que propongo porque es más fácil decir qué 'cmdlet' está usando porque el nombre del módulo asociado está escrito en el guión. –
Lo suficientemente bueno para mí. Gracias Señor. – ferventcoder