CMD не добавляет вывод WSL
В cmd.exe я пытаюсь добавить вывод WSL2 в какой-нибудь файл, например:
C:\somepath>echo Some contents> somefile
C:\somepath>bash.exe --noprofile --norc -c "echo APPEND">> somefile
Processing fstab with mount -a failed.
C:\somepath>type somefile
APPEND
ntents
C:\somepath>
Как видите, выходные данные каким-то образом не добавляются в файл, а перезаписывают начало файла. Я не могу себе представить, что это задумано каким-то образом.
Это происходит только с WSL или Bash, а не с обычными командами, конечно. Но я ожидаю, что cmd будет отвечать за запись в нужное место. Что такого особенного в выводе WSL?
Ошибка «Обработка fstab с помощью mount -a». — это строка, которую я вижу при каждом вызове WSL. Я не думаю, что это связано...?
1 ответ
Границы между Windows и WSL/Linux нечетко определены, поэтому иногда могут возникать странные побочные эффекты.
В вашем случае, наверноеbash
не знал этогоsomefile
в нем уже были некоторые данные, поэтому он просто перезаписал начало содержимого файла.
Вы можете сформулировать команду по-другому, чтобы не пересекать слишком много границ:
bash.exe --noprofile --norc -c "echo APPEND >> somefile"