Principales respuestas
Shell de busqueda en powerShell

Pregunta
-
Buenas tardes.
Soy nuevo en poweshell pero he visto un comando llamado Select-String que funciona parecido al grep de linux.
estoy tratando de hacer una shell que realiza unas busquedas en un archivo y enviarlo a un log.
Select-String "Texo" .\ConsoleLog.0.txt >c:\logprueba.txt
Cuando lo ejecuto desde la linea de comando de powershell funciona pero cuando lo ejecuto como una tarea de procesamiento por lotes me genera el siguiente error:
C:\Admon\BATS>select-string -pattern "Texto" -path $Location 1>c:\logprueba.txt
'select-string' is not recognized as an internal or external command,
operable program or batch file.Adicionalmente no me deja programarlo por el administrador de tareas.
Si alguien me puede ayudar le agradezco
Respuestas
-
Si estás lanzando ese comando desde un BAT es normal que no funcione. Debes invocar a PowerShell para que funcione. Para ello, puede poner tu comando PowerShel en un archivo de extensión ps1 (en el ejemplo Search.ps1, y desde la ventana de comandos o un bat lo invocas así:
powershell -command c:\scriptPS\Search.ps1
Un saludo
Fernando Reyes [MS MVP]
MCSA 2000/2003
MCSE 2000/2003
MCITP EnterpriseAdministrator
Web: http://freyes.svetlian.com
Blog: http://urpiano.wordpress.com
RSS: http://urpiano.wordpress.com/feed/
freyes.champú@champú.mvps.org
(Aclárate la cabeza si quieres escribirme)- Marcado como respuesta Ismael Borche viernes, 1 de abril de 2011 2:06
-
Desde un bat, o desde una consola cmd puedes utilizar el comando findstr.
Por ejemplo, FINDSTR "texto" x.y busca "texto" en el archivo x.y.
Mas info en: http://technet.microsoft.com/en-us/library/bb490907.aspxAun asi, te recomiendo instalar powershell, es muchisimo mas potente.
Saludos
- Marcado como respuesta Ismael Borche viernes, 1 de abril de 2011 2:07
Todas las respuestas
-
Si estás lanzando ese comando desde un BAT es normal que no funcione. Debes invocar a PowerShell para que funcione. Para ello, puede poner tu comando PowerShel en un archivo de extensión ps1 (en el ejemplo Search.ps1, y desde la ventana de comandos o un bat lo invocas así:
powershell -command c:\scriptPS\Search.ps1
Un saludo
Fernando Reyes [MS MVP]
MCSA 2000/2003
MCSE 2000/2003
MCITP EnterpriseAdministrator
Web: http://freyes.svetlian.com
Blog: http://urpiano.wordpress.com
RSS: http://urpiano.wordpress.com/feed/
freyes.champú@champú.mvps.org
(Aclárate la cabeza si quieres escribirme)- Marcado como respuesta Ismael Borche viernes, 1 de abril de 2011 2:06
-
Desde un bat, o desde una consola cmd puedes utilizar el comando findstr.
Por ejemplo, FINDSTR "texto" x.y busca "texto" en el archivo x.y.
Mas info en: http://technet.microsoft.com/en-us/library/bb490907.aspxAun asi, te recomiendo instalar powershell, es muchisimo mas potente.
Saludos
- Marcado como respuesta Ismael Borche viernes, 1 de abril de 2011 2:07