Показать полную графическую версию : [решено] Переменные в XP проблема
Ребят, спасайте, уже всю голову сломал и половину инета излазил. Имеется код с переменными который отлично выполняется на Windows 7 и совсем не хочет выполнятся в XP. Вот кусок кода
if exist %USERPROFILE%\1\ (
msg * "PriVet!"
) else (
msg * "Poka"
)
pause
Пишет and не является внутренней или внешней командой и т.д.
И почти со всеми переменными. кроме windir, programfiles, systemDrive.
Пробывал на двух XP запускать, одна из них только что установленная + обновленная.
Версия cmd 5.1.2600.
Пишет and не является внутренней или внешней командой и т.д. »
Переменная %USERPROFILE% в ХР содержит пробелы и путь с ней нужно заключать в кавычки.if exist "%USERPROFILE%\1\" (
...
Кстати, и в win7 эта переменная может содержать пробелы, и Вам просто повезло.
Переменная %USERPROFILE% в ХР содержит пробелы и путь с ней нужно заключать в кавычки. »
Клево!
Простите за наглость, может тогда подскажите есть строчка
for %%a in ("%vobmen%\Export_*.xls") do (echo.%%~na>>%vlog% & set /a sum+=1)
echo Количество старых файлов !sum! >>%vlog%
в семерке писала в файл названия всех найденых файлов (%%~na) и общее количество, а в XP теперь пишет не название а:
Documents
and
Рабочий
И всегда количество файлов пишет три. Вне зависимости 1 там или 5.
Оу, понял свой косяк - необходимо так:
for %%a in (%vobmen%\"Export_*.xls") do (echo.%%~na>>%vlog% & set /a sum+=1)
gora »
Огромное спасибо!
необходимо так:
for %%a in (%vobmen%\"Export_*.xls") do (echo.%%~na>>%vlog% & set /a sum+=1) »
Лучше так:
for %%a in ("%vobmen%\Export_*.xls") do (echo.%%~na>>"%vlog%" & set /a sum+=1)
Ибо переменные %vobmen% и %vlog% тоже могут иметь пробелы. Вообще кавычки в таких местах - "правило хорошего тона" в программировании.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.