Когда вы набираете имя файла в формате windows, как в вашем примере C:\Users\Mark Logan\Downloads
, символ backsla sh '' 'обрабатывается как escape-код символа. Это изменяет два символа «\ U», чтобы они отображались как один «U». Для нескольких символов два символа заменяются новым, например, «\ b» вставляет BEL, «\ r» вставляет CR, «\ n» вставляет LF, «\ t» вставляет TAB.
Существует несколько способов правильного чтения имени файла в стиле windows программой cygwin, такой как оболочка bash. Обратите внимание, что некоторые программы не будут интерпретировать имя файла в стиле windows как имя файла в стиле cygwin.
- Обертывание в одинарные кавычки:
'C:\Users\Mark Logan\Downloads'
- Использование экранированных обратных косых черт в двойных кавычках:
"C:\\Users\\Mark Logan\\Downloads"
- Используйте экранированные обратные слэши и пробелы:
C:\\Users\\Mark\ Logan\\Downloads
Многие программы cygwin, включая большинство оболочек, используют библиотеку readline для обработки ввода. Это позволяет редактировать строку ввода перед отправкой в программу. Вы можете использовать левую и правую клавиши для перемещения вперед и назад по одному символу за раз, а клавиши home и end для перехода к началу или концу строки ввода. Вы можете добавлять символы в каретку, печатая их, и удалять символы до или после каретки, используя клавишу возврата или клавишу возврата. Нажатие ввода (или возврата) в любой точке строки отправит отредактированную строку в программу.
Чтобы ввести имена файлов в стиле Windows, чтобы они интерпретировались как один и тот же файл, необходимо ввести имя файла в качестве имени файла в стиле cygwin, например, C:\Users\Mark Logan\Downloads
как /cygwin/Users/Mark\ Logan/Downloads
или "/cygwin/Users/Mark Logan/Downloads"
(пробел или пробел в двойных или одинарных кавычках). Вы можете использовать программу cygpath для выполнения этого преобразования (см. Cygpath --help).