При использовании Cygwin я часто копирую путь Windows и вручную редактирую все наклонные черты к формату Unix. Например, если я использую Cygwin и потребность изменить каталог, я вхожу:
cd C:\windows\path
затем отредактируйте это к
cd C:/windows/path
(Как правило, путь намного длиннее, чем это). Существует ли способ использовать sed или что-то еще, чтобы сделать это автоматически? Например, я попробовал:
echo C:\windows\path|sed 's|\\|g'
но получил следующую ошибку
sed: -e expression #1, char 7: unterminated `s' command
Моя цель состоит в том, чтобы уменьшить ввод, поэтому возможно, я мог записать программу, которую я мог назвать. Идеально я ввел бы:
conversionScript cd C:/windows/path
и это было бы эквивалентно вводу:
cd C:\windows\path
Прочтите о команде cygpath.
somecommand `cygpath -u WIN_PATH`
например.
cmd.exe
не любит одинарные кавычки. Вы должны использовать двойные кавычки
C:\test>echo C:\windows\path|sed "s|\\|/|g"
C:/windows/path
Всем спасибо. По-видимому, все, что мне нужно, это одинарные кавычки вокруг пути:
cd 'C: \ windows \ path'
, и Cygwin его преобразует. Cygpath тоже будет работать, но ему также нужны одинарные кавычки, чтобы оболочка не съела символы обратной косой черты.