Показать полную графическую версию : [решено] Непонятный глюк в записи из командной строки в текстовый документ.
Общий смысл такой:
Есть файлик number.ini, в нем только число. Это счетчик номера договора.
При запуске Новый договор.cmd создается папка типа "Номер договора. Клиент изделие".
Так вот беда в том, что если в файлике number.ini будет число от 0 до 8, то потом в него не записывается новое число.
А вот если будет число от 9, то все нормально.
Я ничего понять не могу. Помогите.
@echo off
echo.
echo ‚ўҐ¤ЁвҐ д*¬Ё«Ёо Є«ЁҐ*в* Ё **§ў**ЁҐ Ё§¤Ґ«Ёп
echo Џ®пб*пойЁ© ЇаЁ¬Ґа: ?ў**®ў вг¬Ў*
echo.
set /p client=
for /f %%i in (%~dp0\number.ini) do set number=%%i
md "%~dp0\%number%. %client%"
set /a number=number+1
echo %number%>"%~dp0\number.ini"
Ну или вдруг у кого есть идеи получше и проще реализовать данную задумку, буду рад выслушать.
kiripanda
12-02-2012, 16:34
Поставьте точку echo.%number%>"%~dp0\number.ini"
Поставьте точку echo.%number%>"%~dp0\number.ini" »
Ура! А вот теперь можете популярно объяснить в чем была беда?
Афигеть, с таким я первый раз сталкиваюсь ))) Хотя тоже пробывал так
echo. %number%>"%~dp0\number.ini"
=)))
вот только, из-за пробела не работало, ничего.
так тоже работает.
echo:%number%>"%~dp0\number.ini"
kiripanda
12-02-2012, 17:00
можете популярно объяснить в чем была беда? »
Когда %number% раскрывается в цифру, cmd воспринимает конструкцию X> как перенаправление потока.
echo %number% >"%~dp0\number.ini" — есть пробел, не получается конструкция X>. Работает
>"%~dp0\number.ini" echo %number% — ваще не получается конструкция X>. Работает
"%~dp0\number.ini" »
Слеш здесь лишний, переменная %~dp0 сама содержит завершающий слеш.
kiripanda
12-02-2012, 18:05
gora
Не мешает. Зато лучше читается
http://imageftw.com/uploads/20120212/12_02_2012.17-56-05.01.png
А вот здесь лучше будет
for /f "usebackq" %%i in ("%~dp0\number.ini") do set /a number=%%i
или
for /f %%i in ('type "%~dp0\number.ini"') do set /a number=%%i
kiripanda, что это у тебя за редактор? на скрине.
kiripanda
12-02-2012, 19:16
ЕдитПлюс (платный)
Примерно также выглядит http://wincmd.ru/directory/synplus.html (бесплатный)
не удалось только управляющие символы сделать полутоном
http://imageftw.com/uploads/20120212/12_02_2012.19-11-01.00.png
если раздражают, то можно их отключить
http://imageftw.com/uploads/20120212/12_02_2012.19-31-07.57.png
Но в обоих случаях подсветку правил под себя
Для ввода значения из текстового файла, содержащего единственную строку, нет необходимости в организации разбора. Достаточно простой конструкции из «set /p» с перенаправлением ввода:
@echo off
setlocal enableextensions enabledelayedexpansion
>nul <0001.txt set /p sValue=
echo %sValue%
endlocal
exit /b 0
Редактор Far Manager'а вкупе с Colorer'ом:
http://img854.imageshack.us/img854/4586/image000sb.png
Расцветка — одна из предустановленных, наиболее подходящая к моей цветовой схеме Far Manager'а (настолько, что даже не стал ничего править).
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.