前言
众所周知,Windows中使用的是右斜线(\),而Linux全家都使用左斜线(/)。但有一些编程语言或软件,一开始是为Linux开发的,在这些软件的配置文件中都是左斜线(/)。所以在Windows中到底该用哪种斜线,成了一个问题。
本文的目的是通过一些实例,来研究Windows中正反斜线的关系,以及是否可以混用。
实例一、CMD
CMD中的路径,默认使用右斜线(\),那么打左斜线可不可以呢?
// 默认路径:
C:\Users\User
// 测试左斜线,输入:
cd /Windows
// 测试右斜线,输入:
cd \Users
// 测试左右斜线混用,输入:
cd /Windows\System32
结果如下:
全部可以跳转。事实证明,在CMD中,正反斜线的效果一致,甚至可以混用。
实例二、HTML中的引用路径
使用以下代码,引用4张图片:
<h1>你好,中国!</h1>
<h3>图片版权来自博客作者,未经允许不得转载</h3>
//测试右斜线
<img src="images\1.jpeg" width="360" height="280">
//测试左斜线
<img src="images/2.jpeg" width="360" height="280">
//测试左右斜线混用
<img src="images/3\3.jpeg" width="360" height="280">
<img src="images\4/4.jpeg" width="360" height="280">
效果如下:
事实证明,在HTML中,左右斜线也是都可以使用的。
同样的代码放到Linux中,依然可以使用,但为了安全起见,HTML中还是用左斜线为宜。
实例三、Windows环境变量
以Maven为例,现在正常配置,终端可以输出版本信息:
现在乱改一下,随便写个目录,使maven不能正常运行,达到控制变量的效果。
然后改回去,并且使用左斜线:
可以运行,说明在环境变量中,两种斜线也是等效的。
实例四 Nginx的配置文件
如果需要在Nginx的全局配置文件中引入项目的配置文件,就出现了路径的问题。
文件中的路径,都是左斜线。
上图圈出的位置,是一个已经设置好的项目文件,此时可以正常访问。
依然是控制变量,一通乱改,重启Nginx:
已经无法访问了,说明乱改的生效了,接下来使用右斜线。
然后,神奇的事情发生了:在确保更改已经生效的情况下,却无法访问监听端口。这说明,即使在Windows中,配置Nginx时也不能使用右斜线。
总结
测试结果:
没有出现左斜线不能使用的情况,反而出现了右斜线不能使用的情况。
结论:
别管Windows还是Linux,用左斜线准没毛病,奥利给!
延伸
另外,人们普遍认为,Windows很不适合软件开发(.NET除外)。其中原因有:
- 没有成熟的包管理器
- 十分麻烦的环境变量
- Windows CMD与Linux Shell的操作逻辑格格不入
- 正反斜线的问题
因此,人们也想出来一些解决方案来拥抱Linux,比如双系统、比如虚拟机、比如WSL。如果需要搭建WSL,可以参考:
Windows下搭建最接近Linux体验的开发环境——使用WSL(Linux子系统)
如果学习Web开发,真诚的建议安装Linux或Mac,可以省很多事。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。