pushd com rd não funciona como eu quero

0

Eu tentei assim

pushd \somedrive.se\Install\Paket\XXX\
echo "start..."
for /f %i in ('dir /a:d /b bu* ') do echo /q %i
popd

e obteve essa saída ao executar a partir de um script:

Z:\Paket\XXX>echo "start..."
"start..."
/b was unexpected at this time.
Z:\Paket\XXX>for /f d /b bu* ') do echo /q i

Mas se eu fizer isso diretamente na janela de comando, funciona?

Z:\Paket\XXX>for /f %i in ('dir /a:d /b bu* ') do echo /q %i
Z:\Paket\XXXX>echo /q bu.1_2.zip
/q bu.1_2.zip

O que estou fazendo de errado?

    
por user1540911 29.04.2015 / 09:12

1 resposta

1

Isso não está relacionado a pushd .
Você precisa usar sinais de porcentagem dupla quando executado a partir do lote (como oposto diretamente a partir da linha cmd.), Portanto, ele deve se tornar:% for /f %%i in ('dir /a:d /b bu* ') do echo /q %%i

Referência do MS: link

    
por 29.04.2015 / 09:46