У меня есть сценарий входа в систему, который копирует файл во вложенную папку пути к профилю текущего пользователя:
Скрипт (показывает только неработающую строку):
copy /Y c:\records\javasettings_Windows_x86.xml "%USERPROFILE%\Application Data\OpenOffice.org\3\user\config">>c:\records\OOo3%USERNAME%.txt 2>&1
Чтобы определить, почему это не работает, я установил параметр> somelogfile.log в сценарии групповой политики и обнаружил, что приведенная выше команда переводит следующее:
C:\WINDOWS>copy /Y c:\records\javasettings_Windows_x86.xml "C:\Documents and Settings\test2\Application Data\OpenOffice.org\3\user\config" 1>>c:\records\OOo3test2.txt 2>&1
Итак, вопрос в том, как мне избавиться от (изгнания нечистой силы) «1» в этой строке?
Обновление 1:
Итак, причина, по которой скрипт не работал, заключалась в том, что у создателя не было разрешений на каталог. Я исправил разрешения, и теперь файл работает но! У меня все еще отображается цифра «1» во всех журналах, и я хотел бы знать, почему.
Оболочка делает то, о чем вы ее просите. Перенаправление, подобное вашему >>
без указанного номера дескриптора предполагается перенаправление на дескриптор 1, который в случае вывода является стандартным выводом. Когда оболочка анализирует пакетный файл и находит «голые» перенаправления, она добавляет номер дескриптора при повторении команды. Это просто причуда реализации оболочки.