2016-01-21 3 views
0

Я хочу запустить некоторые команды diskpart из текстового файла и сохранить его вывод в другом текстовом файле. Это написано в моем командном файле, который я хочу сделать.Признак дополнительного символа в командной строке после запуска командного файла

DISKPART /S E:\CMD.TXT > E:\OUT.TXT 
PAUSE 

и когда я запускаю его (даже администратор) не работает хорошо, и это написано в черный экран ЦМД:

DISKPART /S E:\CMD.TXT 1>E:\OUT.TXT 
PAUSE 

Это дополнительный 1 делает это не правильно работать. что это? и как я могу решить это дорогие друзья?

+1

кажется хорошим для меня. '>' - это просто аббревиатура от '1>', поэтому нет причин беспокоиться. Что вы подразумеваете под «не работает»? Что это значит и чего вы ожидаете от этого? – Stephan

+0

Нам нужно увидеть ошибку (снимок экрана), и это поможет, если вы разместите содержимое cmd.txt. Если вы запустили вышеперечисленное без перенаправления на Out.txt, завершится ли он так, как ожидалось? – RLH

ответ

0

Windows, поддерживает ряд "стандартных устройств"

0 это стандартный ввод (STDIN) - обычно назначается к клавиатуре.
1 стандартный выход (стандартный вывод) - как правило, назначается на консоль
2 стандартная ошибка (STDERR) - как правило, назначается на консоль

Таким образом, вы могли бы написать программу, которая принимает входные данные из стандартного ввода и записывает результаты на стандартный вывод и ошибки в поток ошибок (не все программы используют STDERR)

При перенаправлении ввода или вывода с помощью редиректоры (< и >) вы можете назначить вход в файл, если вы хотите, или прямой выход или ошибки также к файл.

Отдельное перенаправление stdout и stderr является новым для NT-серии Windows (2K, XP, Vista, 7,8,10) и > считается stdout gets redirected. Для перенаправления stdout явно вам необходимо использовать 1>. Для перенаправления stderr явно вам необходимо использовать 2>.

Windows вставляет 1, чтобы указать, что stdout перенаправляется, но не stderr.

Итак - нет ничего плохого в том, что сообщается.

Какова ваша команда? Содействовало ли это тому, чтобы окна не пытались создать файл на E:, когда E: является объектом операции diskpart?

+0

Спасибо Magoo. проблема была в чем-то еще. исходный файл txt ввода был назван «Dastoorha» (означает «Команды на персидском языке»). Я изменил название на CMD, и проблема решена благодаря .. – Amirreza

Смежные вопросы