在日常的学习和使用中,我们见过两种形式的文件路径,一种以/分隔,一种以\分隔,二者有什么区别和联系呢?
- 首先,我们来看一个使用/分隔文件路径的例子,我们在Linux操作系统下,使用pwd查看绝对路径:
- 然后,我们再来看一个使用\分隔文件路径的例子,在Windows操作系统下,使用chdir查看绝对路径:
从上述演示可以看出,Linux下文件路径默认使用/分隔,而Windows下文件路径默认使用\分隔,是不是说在Linux下只能用/进行文件路径分隔,在Windows下只能使用\进行路径分隔呢?
- 我们先来验证一下,Linux文件路径中能否使用\进行分隔。
可以看到,Linux下无法使用\进行分隔,那\在Linux中是什么含义呢,我们来试一下:
可以看到,\在Linux命令行中的含义是可以将一串连续的命令分行书写,\作为连接符使用。 - 然后我们再来验证一下,Windows文件路径中能否使用/进行分隔。
从上述结果可以看出,Windows下既可以使用/作为文件路径分隔符,也可以使用\作为文件路径分隔符。
/和\的关系:
- Unix/Linux使用斜杠/作为文件路径分隔符。目前大多数web应用都部署在Linux系统上,所以目前所有的网络地址都采用斜杠/作为分割符。
- Windows由于使用斜杠/作为DOS命令行提示符,为了不混淆,所用采用\作为路径分隔符。所以目前Windows系统上的文件浏览器都是用反斜杠\作为路径分隔符。随着时代的发展,DOS系统已经被淘汰了,命令提示符也用的很少,所以在Windows下斜杠和反斜杠在大多数情况下可以互换,没有影响。
注意,在大多数编程语言中,常用反斜杠\加字符表示转义字符,如\0表示空字符,\t表示水平制表符,\n表示换行符。所以在这些编程语言中如果使用字符串表示Windows下的文件路径时,如果使用\进行路径分隔,注意不要写错,下面看示例: