Я знаю, что backsla sh (\
) является частью escape-символа.
Мой вопрос: как мне заставить эту работу работать без изменения windows path C:\Users\user\Documents
в этом скрипте?
Я не хочу удалять \
в этом случае и хотел бы использовать оригинальный путь windows без кавычек.
script. sh
[user@linux ~]$ cat script.sh
##!/bin/sh -x
echo Before: $(pwd)
cd $1
echo After : $(pwd)
[user@linux ~]$
Тест 1
[user@linux ~]$ script.sh C:\\Users\\user\\Documents
Before: /home/user
After : /cygdrive/c/Users/user/Documents
[user@linux ~]$
Тест 2
[user@linux ~]$ script.sh /cygdrive/c/Users/user/Documents
Before: /home/user
After : /cygdrive/c/Users/user/Documents
[user@linux ~]$
Тест 3
[user@linux ~]$ script.sh 'C:\Users\user\Documents'
Before: /home/user
After : /cygdrive/c/Users/user/Documents
[user@linux ~]$
Тест 4
[user@linux ~]$ script.sh C:\Users\user\Documents
Before: /home/user
/home/user/script.sh: line 3: cd: C:UsersuserDocuments: No such file or directory
After : /home/user
[user@linux ~]$
Требуемый выход при тесте 4
Вход должен быть C:\Users\user\Documents
без кавычек (''
или ""
)
[user@linux ~]$ script.sh C:\Users\user\Documents
Before: /home/user
After : C:\Users\user\Documents
[user@linux ~]$