¿Algo así es posible en el shell estándar de Windows que usa comodines solamente?Nombre de archivo globbing Windows contra Unix
$ ls -1 003[5,8]0
00350
00380
¿Algo así es posible en el shell estándar de Windows que usa comodines solamente?Nombre de archivo globbing Windows contra Unix
$ ls -1 003[5,8]0
00350
00380
No en el shell de comandos de Windows estándar (cmd.exe). Solo entiende el? y * comodines; sin expresiones regulares
¿Tiene la opción de instalar Cygwin, Windows Powershell u otro shell mejorado?
sí, puede. No con un solo comando, pero con una combinación de FOR
y IF
. Pruebe lo siguiente para que pueda empezar ...
setlocal enabledelayedexpansion
for %%a in (003?0) do (
set fn=%%a
set fnl=!fn:~3,1!
if .!fnl!==.5 (
echo !fn!
)
if .!fnl!==.8 (
echo !fn!
)
)
Desafortunadamente no im capaz de instalar cualquier otro conchas, ya que este es un entorno de producción y no tengo los derechos para hacerlo – lukuluku
No creo que eso es estrictamente cierto. Podría hacer una expresión regular con 'findstr' con la entrada de un comando' dir', no estoy seguro de cómo escribirla, pero creo que debería ser posible. Estoy seguro de que @dbenham o @jeb podrán aportar algo :) –
Lo suficientemente justo. Si solo desea la salida de texto y no los efectos secundarios del comando, entonces 'dir | findstr/r "003 [5,8] 0" 'funcionará. – Simbilis