
Я пытался добавить текстовый файл в bash в WSL (используя оператор >>
). К сожалению, поскольку я новичок, вместо добавления в файл был создан новый файл с именем >>
'text', и похоже, что ни Windows (GUI), ни Ubuntu ( rm
команда ) не могут удалить файл, пока он находится в каталоге (он отображается даже при использовании команды dir
).
Графический интерфейс Windows:
Код ошибки Windows:
Баш:
root@DESKTOP-IA030GJ:/# cd home root@DESKTOP-IA030GJ:/home# dir English_Class Finished_Projects Keeping.txt Random_Password_Generator_Project \\n\\n\ -----Changes\ onion_project pythonwork root@DESKTOP-IA030GJ:/home# ls --quoting-style=shell English_Class '\n\n -----Changes ' Finished_Projects onion_project Keeping.txt pythonwork Random_Password_Generator_Project
решение1
Это имя файла содержит специальные символы из-за того, как вы изначально (случайно) передавали данные по конвейеру. Из-за этого нам нужно знатьточныйимя файла и используйте его в rm
команде в кавычках.
Мы знаем, что ваш файл называется именно так \n\n -----Changes
. Так что давайте это и используем. Не удаляйте одинарные кавычки из этой команды, иначе она не будет работать.
rm '\n\n -----Changes '
Это должно полностью избавиться от этого файла, без каких-либо последующих проблем.
Обратите внимание, что вы также могли бы удалить файл, используя его *Changes*
в качестве шаблона для удаления, или добавить -i
к нему флаг, чтобы сделать его интерактивным и убедиться, что файлы, которые вы хотите удалить, действительно удаляются.