通过几个实例,研究Windows命令行中的左斜线和右斜线

前言

众所周知,Windows中使用的是右斜线(\),而Linux全家都使用左斜线(/)。但有一些编程语言或软件,一开始是为Linux开发的,在这些软件的配置文件中都是左斜线(/)。所以在Windows中到底该用哪种斜线,成了一个问题。

本文的目的是通过一些实例,来研究Windows中正反斜线的关系,以及是否可以混用。

实例一、CMD

CMD中的路径,默认使用右斜线(\),那么打左斜线可不可以呢?

// 默认路径:
C:\Users\User
// 测试左斜线,输入:
cd /Windows
// 测试右斜线,输入:
cd \Users
// 测试左右斜线混用,输入:
cd /Windows\System32

结果如下:
通过几个实例,研究Windows命令行中的左斜线和右斜线_第1张图片

全部可以跳转。事实证明,在CMD中,正反斜线的效果一致,甚至可以混用。

实例二、HTML中的引用路径

使用以下代码,引用4张图片:

你好,中国!

图片版权来自博客作者,未经允许不得转载

//测试右斜线 //测试左斜线 //测试左右斜线混用

效果如下:
通过几个实例,研究Windows命令行中的左斜线和右斜线_第2张图片

事实证明,在HTML中,左右斜线也是都可以使用的。

同样的代码放到Linux中,依然可以使用,但为了安全起见,HTML中还是用左斜线为宜。

实例三、Windows环境变量

以Maven为例,现在正常配置,终端可以输出版本信息:
通过几个实例,研究Windows命令行中的左斜线和右斜线_第3张图片

现在乱改一下,随便写个目录,使maven不能正常运行,达到控制变量的效果。
通过几个实例,研究Windows命令行中的左斜线和右斜线_第4张图片

然后改回去,并且使用左斜线:
通过几个实例,研究Windows命令行中的左斜线和右斜线_第5张图片
可以运行,说明在环境变量中,两种斜线也是等效的。

实例四 Nginx的配置文件

如果需要在Nginx的全局配置文件中引入项目的配置文件,就出现了路径的问题。
文件中的路径,都是左斜线。
通过几个实例,研究Windows命令行中的左斜线和右斜线_第6张图片

上图圈出的位置,是一个已经设置好的项目文件,此时可以正常访问。

依然是控制变量,一通乱改,重启Nginx:
通过几个实例,研究Windows命令行中的左斜线和右斜线_第7张图片

已经无法访问了,说明乱改的生效了,接下来使用右斜线。

通过几个实例,研究Windows命令行中的左斜线和右斜线_第8张图片

然后,神奇的事情发生了:在确保更改已经生效的情况下,却无法访问监听端口。这说明,即使在Windows中,配置Nginx时也不能使用右斜线

总结

测试结果:

没有出现左斜线不能使用的情况,反而出现了右斜线不能使用的情况。

结论:

别管Windows还是Linux,用左斜线准没毛病,奥利给!

延伸

另外,人们普遍认为,Windows很不适合软件开发(.NET除外)。其中原因有:

  • 没有成熟的包管理器
  • 十分麻烦的环境变量
  • Windows CMD与Linux Shell的操作逻辑格格不入
  • 正反斜线的问题

因此,人们也想出来一些解决方案来拥抱Linux,比如双系统、比如虚拟机、比如WSL。如果需要搭建WSL,可以参考:
Windows下搭建最接近Linux体验的开发环境——使用WSL(Linux子系统)

如果学习Web开发,真诚的建议安装Linux或Mac,可以省很多事。

你可能感兴趣的:(windows,cmd,命令行,环境变量)