В Windows есть концепция для нулевых устройств, как подробно описано здесь, здесь или здесь например. Все примеры, которые я могу найти, касаются перенаправления потоков.
При портировании скрипта из Linux в Windows я столкнулся с кое-чем странным: если nul
открыть как файл, я пишу в него, закрываю, снова открываю и считываю данные обратно. Иногда. Проверяя рабочий каталог, я вижу, что файл с именем nul
создается и растет по мере того, как я записываю в него данные. Как ни странно, я не могу удалить его из проводника, только из командной строки.
В настоящее время Windows 10 поставляется с собственной реализацией OpenSSH. Я хотел использовать старый трюк: когда он ищет файл known_hosts
, я вместо этого хочу указать ему нулевое устройство. В Linux это выглядит так: ssh -o UserKnownHostsFile=/dev/null user@host
. В Windows тестировал следующим образом: ssh -o UserKnownHostsFile=nul user@host
. У меня есть файл с именем nul
, содержащий hosts. Я также пробовал NUL
, null
и NULL
с тем же результатом. Попытка указать на \Device\Null
или /Device/Null
приводит к тому, что ssh
жалуется, что не может найти/открыть эти файлы.
Как правильно использовать и/или указать нулевое устройство в Windows (10)?
ssh -o UserKnownHostsFile=$null user@host
- person KetZoomer   schedule 03.05.2021NUL:
), не работает: я получаю файл с некоторым символом Юникода вместо двоеточия. Это странно. - person s-m-e   schedule 03.05.2021shell = False
. - person s-m-e   schedule 03.05.2021