Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   echo обрезает вывод после точки (http://forum.oszone.net/showthread.php?t=283477)

ashum 11-06-2014 09:57 2362784

echo обрезает вывод после точки
 
Есть код:

Код:

@echo on

set output="cur_playing.txt"

set "a=Lou Bega"
set "b=%a:&=^&%"
set "c=Mambo No. 5"
set "d=%c:&=^&%"

<nul Set /P echo=%b% - %d%>%output%
recode cp1251..utf8/ %output%

Его вывод:

Код:

C:\Users\as\Desktop\1>1.cmd

C:\Users\as\Desktop\1>set output="cur_playing.txt"

C:\Users\as\Desktop\1>set "a=Lou Bega"

C:\Users\as\Desktop\1>set "b=Lou Bega"

C:\Users\as\Desktop\1>set "c=Mambo No. 5"

C:\Users\as\Desktop\1>set "d=Mambo No. 5"

C:\Users\as\Desktop\1>Set /P echo=Lou Bega - Mambo No.  0<nul 5>"cur_playing.txt
"
Lou Bega - Mambo No.
C:\Users\as\Desktop\1>recode cp1251..utf8/ "cur_playing.txt"

Файл cur_playing.txt пустой, а должно в нем быть "Lou Bega - Mambo No. 5".
Помогите поправить.

Iska 11-06-2014 10:08 2362788

Совершенно непонятный код. Где Вы здесь видите вывод «echo»? Вот вывод «echo»:
Код:

>"cur_playing.txt" echo Lou Bega - Mambo No. 5
И никаких проблем с «echo обрезает вывод после точки».

ashum 11-06-2014 10:13 2362790

Это кусок кода, значения a и с берутся из предыдущего кода, я здесь заменил их на константы для наглядности.
Переменные b и d заменяют в переменных a и с символы амперсанда на значок. В данном куске не используется.

Проблема со строчкой
Код:

<nul Set /P echo=%b% - %d%>%output%
Мне нужен вывод в текстовый файл именно переменных, а не фиксированных значений, как вы написали.
Если убрать из переменной с точку, то вывод в файл работает, выводится: Lou Bega - Mambo No 5

Iska 11-06-2014 10:45 2362802

Цитата:

Цитата ashum
Проблема со строчкой »

Код:

>"%sOutputFile%" <nul set /p sVar=%b% - %d%

ashum 11-06-2014 10:59 2362808

Все работает, спасибо!


Время: 01:57.

Время: 01:57.
© OSzone.net 2001-