首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >git bash中文件路径的正斜杠与后斜杠

git bash中文件路径的正斜杠与后斜杠
EN

Stack Overflow用户
提问于 2016-11-03 08:14:28
回答 4查看 18.3K关注 0票数 5

我在Git bash中运行这两个命令。

为什么他们的行为不同?他们不是应该做同样的事还是我错过了什么?

代码语言:javascript
运行
复制
git diff > D:\Patches\afterWGComment.txt  

PatchesafterWGComment.txt中创建D:/文件

代码语言:javascript
运行
复制
git diff > D:/Patches/afterWGComment.txt  

正确地在afterWGComment.txt中创建D:/Patches/文件

请注意,在运行上述命令之前,D:/Patches/文件夹是存在的。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2016-11-03 08:55:15

Bash将反斜杠视为转义字符,这意味着对其后面的符号进行字面解释,并删除反斜杠本身。

代码语言:javascript
运行
复制
$ echo $HOME
/home/user
$ echo \$HOME
$HOME

在Windows下,反斜杠充当路径分隔符,这会造成一些不便。幸运的是,在单引号中,反斜杠字符失去了其特殊意义,并被按字面处理(除单引号外,其他字符除外):

代码语言:javascript
运行
复制
$ echo '\$HOME'
\$HOME

因此,如果要将Windows路径复制并粘贴到Git bash中,请将其放在单引号中:

代码语言:javascript
运行
复制
git diff > 'D:\Patches\afterWGComment.txt'
票数 18
EN

Stack Overflow用户

发布于 2016-11-03 08:54:23

反斜杠是一个转义字符,用于转义元字符。这意味着你需要逃离逃逸:

代码语言:javascript
运行
复制
D:\\Patches\\afterWGComment.txt

可以将字符串放在单引号中,这将使所有字符都是文字的:

代码语言:javascript
运行
复制
'D\Patches\afterWGComment.txt'

一些元字符:*~$!

票数 4
EN

Stack Overflow用户

发布于 2016-11-03 08:21:54

嗯,Linux中的Backslash (\)通常意味着一个escape character。因此,在您的例子中,反斜杠是转义字符串。尝试使用cd "D:\Patches\afterWGComment.txt",您就可以看到不同之处。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40396613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档