|
52 / 18 / 11
Регистрация: 27.03.2013
Сообщений: 789
|
|||||||||||
Что такое «.\NUL»? И почему это не работает?12.04.2013, 20:07. Показов 54633. Ответов 28
Метки нет (Все метки)
Эти файлы нельзя открыть. В чем может быть проблема, переменная %work% создана
0
|
|||||||||||
| 12.04.2013, 20:07 | |
|
Ответы с готовыми решениями:
28
Что это такое VDI? Tasklist и taskkill. Объясните на пальцах, что это такое=) |
|
|
|||||||
| 12.04.2013, 20:42 | |||||||
|
Так Вы объясните, что пытаетесь сделать?
Что за диалоговое окно? Ничего не должно появляться по определению. NUL или .\NUL - это устройство, которое всегда существует. Используется для перенаправления (зануления) потоков от команд. Переменные задаются так:
IF NOT EXIST %work% ... лучше брать в кавычки во избежания проблем с пробелами IF NOT EXIST "%work%" ... Добавлено через 5 минут Вот еще тема: Различия перенаправлений в nul и NULL
0
|
|||||||
|
52 / 18 / 11
Регистрация: 27.03.2013
Сообщений: 789
|
||||||
| 13.04.2013, 11:39 [ТС] | ||||||
|
да переменная устанавливается так set work=%cd%\windows7_x32
ошибся, когда писал а вот откуда информация, я пытаюсь разобрать для себя этот скрипт, не хочу бездумно копировать, а хочется дописать для удобства , объединить и копирование... Про NULL и NUL скудно описано и сам не нашел, а эту тему , что вы по ссылке дали, нашел, но так и ничего не понял, там в основном вопросы и нет развернутых ответов на примерах. Например как в видеоуроках Александра Пенкрата, хотелось бы в таком стиле увидеть ответ, чтоб это понять нужно сделать несколько примеров и понять как они работают, тогда понимается смысл команд и взаимодейтсвия с ними.
0
|
||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||
| 13.04.2013, 19:59 | |||||||||||||||||||||||||||||||||||||||||||||
|
1) Это никогда не будет работать, если допускаете опечатки:
На счет Вашего замечания об информативности - я его учту и постараюсь набросать несколько примеров. Для начала: 1. Использование NUL, чтобы спрятать сообщения. 1) Вводим команду (можно не в бат-файл, прямо в интерпретатор: Пуск -> Выполнить -> CMD)
Эта конструкция равносильна:
Еще часто используется поток № 2 (StdError), куда попадают сообщения об ошибках. Например, инсцинируем ошибку при создании каталога:
Например, проверяем, что файл физически можно считать с диска:
Добавлено через 2 часа 58 минут Можно переписать код так:
2
|
|||||||||||||||||||||||||||||||||||||||||||||
|
52 / 18 / 11
Регистрация: 27.03.2013
Сообщений: 789
|
||||||||||||||||||||||||||||
| 13.04.2013, 23:41 [ТС] | ||||||||||||||||||||||||||||
1.При выполнении команды
И еще , не могу понять это просто пример или реально он как то лучше выполняет обнуление , иначе говоря
Какие еще два потока обнулять, ведь на экране я вижу один поток - это сообщение об ошибке, поэтому и не пойму к чему этот пример
0
|
||||||||||||||||||||||||||||
|
|
|||||
| 14.04.2013, 00:20 | |||||
Сообщение было отмечено как решение
РешениеДругими словами - перенаправляет поток на устройство NUL. 2>nul 1>&2 Другими словами: происходит конкатенация потока № 1 с потоком № 2. Затем поток № 2 "зануляется". Зато при большом количестве однотипных операций, которые выводят сообщения на экран, это может ускорить процесс. Вывод на экран занимает время. А в Вашем случае нужен только из эстетических интересов. Добавлено через 2 минуты Интерпретатор тоже может прочесть это по-разному в вариациях с другими командами. Отступайте пробелом.
3
|
|||||
|
52 / 18 / 11
Регистрация: 27.03.2013
Сообщений: 789
|
||||||||||||||||||||||||||
| 14.04.2013, 20:26 [ТС] | ||||||||||||||||||||||||||
%~dp0 - обозначение текущего каталога
Таким образом в папке, откуда запущен командный файл(которая является текущей и обозначена %~dp0 ), создается каталог windows7_x32
Какой каталог? Их два : 1-й это тот в котором создан каталог windows7_x32 2-й каталог это windows7_x32, в котором собственно и создаются остальные каталоги
1. Перенаправить поток вывода в NUL - Зачем? Что это дает, я делал с разными параметрами с оператором > и без, различия не увидел 2. Создать каталоги которых нет в наборе Popd - переходит в каталог который был назначен текущим командой PUSHD и сохранен текущим, А как же он без этих команд станет не текущим? Ведь командный файл пишется так что если нужно из текущего каталога не выходят во время работы командного файла, вообщем запутался И зачем они применили такую конструкцию
0
|
||||||||||||||||||||||||||
|
|
||||||||
| 14.04.2013, 21:09 | ||||||||
|
С кириллицей и так по-умолчанию, работает нормально, если только Вы вручную не задаете название папки кириллицей - тогда бат-файл нужно сохранять в кодировке DOS (OEM-866). Или если попадуться укр. и др. символы такие, как ї, тогда в начале бат-файла нужно прописывать команду chcp 1251 Прочитайте справку по pushd /? popd - использовал чисто из здравой логики. Можно не писать. Переходит в каталог, который запомнила команда Pushd перед переходом в новый каталог.
0
|
||||||||
|
52 / 18 / 11
Регистрация: 27.03.2013
Сообщений: 789
|
|||||||||||||
| 14.04.2013, 21:57 [ТС] | |||||||||||||
|
pushd делает данный каталог текущим Пробовал что так
0
|
|||||||||||||
|
Модератор
5241 / 2115 / 416
Регистрация: 06.01.2013
Сообщений: 4,846
|
|||||||
| 14.04.2013, 23:09 | |||||||
1
|
|||||||
|
52 / 18 / 11
Регистрация: 27.03.2013
Сообщений: 789
|
|||||||||||||||||||||
| 15.04.2013, 10:14 [ТС] | |||||||||||||||||||||
|
Нашел для себя вот что про параметр %~dp0
FAQ по файлам BAT/CMD
0
|
|||||||||||||||||||||
|
Модератор
5241 / 2115 / 416
Регистрация: 06.01.2013
Сообщений: 4,846
|
|
| 15.04.2013, 19:02 | |
|
Если батник вызван из сетевой папки, то при попытке cd %~dp0 папка сменится на катлог Windows
0
|
|
|
Клюг
7677 / 3192 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
|
|||||||
| 15.04.2013, 20:52 | |||||||
Thus, it is not possible to use UNC paths in a command box which can be very annoying. When this option is turned on, you can use UNC paths as the current directory and you will also no longer get an error message when the command box starts from a UNC path.
2
|
|||||||
|
887 / 189 / 16
Регистрация: 18.07.2011
Сообщений: 260
|
|||||||
| 18.04.2013, 22:20 | |||||||
|
В данном скрипте предполагается, что Exist не всегда адекватно срабатывает на проверку папок, поэтому должна делаться проверка на наличие файла. Любой файл в Windows ищется в 2 этапа. Сначала ищется папка в которой лежит файл, а потом уже сам файл. Если папка не существует, то ОС даже не будет пытать искать файл в папке. В результате exist сообщит, что файл не найден. А вот если папка существует, то начинается проверка на наличие в папке файла NUL, а этот файл как и PRN и COM1 существует всегда. Попробуй выполнить в командной строке следующие команды по отдельности:
2
|
|||||||
|
887 / 189 / 16
Регистрация: 18.07.2011
Сообщений: 260
|
||
| 18.04.2013, 22:45 | ||
|
Это одна из возможных причин заблуждения. В любом случае, проверка NUL по полному пути это очень интересный приём. Лично я не знал, что так можно.
2
|
||
|
1748 / 353 / 41
Регистрация: 15.10.2012
Сообщений: 550
|
|||||||||||||||||
| 30.04.2013, 17:54 | |||||||||||||||||
Сообщение было отмечено ComSpec как решение
Решение
Добавлю свои пять копеек
![]() Например, проверка
2
|
|||||||||||||||||
|
12 / 3 / 0
Регистрация: 04.05.2011
Сообщений: 17
|
||||||
| 14.02.2016, 14:05 | ||||||
|
увидел в одном батнике конструкцию
1
|
||||||
|
|
|||||||
| 14.02.2016, 17:38 | |||||||
|
Семёнычев Роман, интересное наблюдение.
Похоже, что знак ":" в данном случае воспринимается как разделитель имени файла и имени потока. Тем не менее, я попробовал такой батник:
А вот разницу в последних двух вариантах я не могу объяснить. У кого есть идеи?
0
|
|||||||
|
12 / 3 / 0
Регистрация: 04.05.2011
Сообщений: 17
|
|
| 21.02.2016, 08:25 | |
|
у тебя перед nul нет пробела. не знаю, важно ли это
0
|
|
| 21.02.2016, 08:25 | |
|
Помогаю со студенческими работами здесь
20
Что такое IIS и что такое PWS? Почему одно без другого не работает? Что такое звук, как это работает
Что такое монитор и что такое мьютекс? Это же разные вещи?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях.
Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её.
Последовательность действий:. . .
|