Puede ser una pregunta simple, pero soy nuevo en PowerShell y no pude encontrar la forma de hacerlo. Básicamente, tengo que ejecutar un archivo .BAT si no existe un archivo especificado. El nombre del archivo está en un patten como "mmddyyy .dat" en una carpeta, donde mmddyyyy es el mes de hoy, el día (0 prefijo si < 10) y el año. códigos seudo sería algo como esto:¿Comprueba si el archivo existe y ejecuta un archivo por lotes en PowerShell?
$File = "C:\temp\*mmddyyyy*.dat" # how to parse Get-Date mmddyyyy and build this pattern?
#if $File exist # check any file exist?
.\myBatch.bat # run the bat file, can I run it in hidden mode?
Si deseo agregar dos parámetros como args a la función y devolver el resultado en el formato de "{0} {1: d2} {2: d2} {3} {4}" -f arg [0] ,. .., arg [1]. ¿Cómo puedo llamar a esta función? Recibí un error llamando a GetDateFleName ("C: \ temp \ *", "* .dat"). –
'$ dateFileName =" {0: MMddyyyy} .dat "-f (Get-Date)' sería un poco más corto y menos intrincado. – Joey
Agregue los parámetros a una función como esta: function foo ([string] $ foo = "foo", [string] $ bar = "bar") { Write-Host "Arg: $ foo"; Write-Host "Arg: $ bar"; } y se llama a la función de este modo: foo "param1" "param2" – BlueSam