write variable script print imprimir ejemplos ejecutar desde crear powershell

variable - script powershell ejemplos



Equivalente de eco en PowerShell para pruebas de script (9)

Me gustaría generar variables y valores en un script de PowerShell configurando indicadores y viendo los datos matriculados en todo el script.

¿Cómo haría esto?

Por ejemplo, ¿cuál sería el equivalente de PowerShell al siguiente código PHP?

echo "filesizecounter: " . $filesizecounter


Con mucho, la manera más fácil de hacer eco en PowerShell es simplemente crear el objeto de cadena y dejar que la tubería lo genere:

$filesizecounter = 8096 "filesizecounter : $filesizecounter"

Por supuesto, renuncia a cierta flexibilidad cuando no utiliza los métodos Write- *.


El Write-host funciona bien.

$Filesize = (Get-Item $filepath).length; Write-Host "FileSize= $filesize";


Hay varias formas:

Write-Host : escribe directamente en la consola, no incluido en la salida de función / cmdlet. Permite establecer el color de primer plano y de fondo.

Write-Debug : escriba directamente en la consola, si $DebugPreference establece en Continue o Stop.

Write-Verbose : escribe directamente en la consola, si $VerbosePreference establece en Continue o Stop.

El último está destinado a la información adicional opcional, Write-Debug para la depuración (por lo que parece encajar en este caso).

Adicional : en PSH2 (al menos) los scripts que usan el enlace de cmdlet obtendrán automáticamente los -Verbose y -Debug , habilitando localmente Write-Verbose y Write-Debug (es decir anulando las variables de preferencia) como lo hacen los cmdlets y proveedores compilados.


No sé si es aconsejable hacerlo, pero puedes escribir

"filesizecounter: " + $filesizecounter

Y debería salir:

filesizecounter: valor


PowerShell interpola, ¿no es así?

En PHP

echo "filesizecounter: " . $filesizecounter

también se puede escribir como:

echo "filesizecounter: $filesizecounter"

En PowerShell, algo así debería adaptarse a sus necesidades:

Write-Host "filesizecounter: $filesizecounter"


Powershell tiene un eco de asignación de alias en Write-Output , por lo que:

echo "filesizecounter : $filesizecounter"


Pruebe Get-Content ./yourScript.PS1 y verá el contenido de su script.

también puede insertar esta línea en su código scrip:

get-content ./scriptname.PS1 script code script code

....


echo es alias para Write-Output aunque tiene el mismo aspecto que Write-Host .

No es ¿Cuál es la diferencia entre echo y Write-Host en PowerShell? .

echo es un alias para Write-Output, que escribe en la secuencia de salida Success. Esto permite que la salida se procese a través de canalizaciones o se redirija a archivos. Write-Host escribe directamente en la consola, por lo que la salida no se puede redirigir / procesar más.


Write-Host "filesizecounter : " $filesizecounter