前言

鉴于在Windows(开发环境)和Linux(部署环境)之中的路径(斜杠和反斜杠)经常会进行混淆,所以专门写一篇笔记来进行区分。大部分是按照博客园那位老兄的思路进行编写,并且结合另外一些人的想法,进行了整理和排版。

理解

先讲讲我的理解:Windows由于自身的限制,在所有人都用正斜杠"/"的情况下,带了个坏头,用了反斜杠"",万恶之源。就像是Windows的第一个字母W的第一个笔画,反斜杠\的写法,倒退的作用。

知乎上不同人的理解。

” "/" 英文是forward slash, "\" 是backward slash,

形象些比喻的话,“/"是一个人站立着向前倾倒->, 而"\"是一个人站立着向后倾倒。“

知乎用户:“在绝大多数地方,用的都是/(slash),包括Mac/Linux,也包括URL。你唯一需要记住的是,Microsoft这个怪鸡在自己的操作系统里面偏要用\(backslash),使得自己与众不同。

评论区人才:“正斜杠/是一撇,反斜杠\是一捺”。

我的理解:Windows由于自身的限制,带了个坏头,用了反斜杠,万恶之源。就像是Windows的第一个笔画,反斜杠的写法,倒退的作用。

不同操作系统的区别

Unix使用斜杠/作为路径分割符,而Web应用最先是使用在Unix系统上面,所以目前所有的网络地址都采用斜杠/作为分隔符。Linux又称升级版的Unix,所以路径这方面跟Unix是大同小异的。

Windows由于使用斜杠/作为DOS命令提示符的参数标志了,为了不混淆,所以采用反斜杠\作为路径分隔符。所以目前Windows系统上的文件浏览器都是用反斜杠\作为路径分隔符。随着发展,DOS系统已经被淘汰了,命令提示符也用得很少,斜杠和反斜杠在大多数情况下可以互换,没有影响。

DOS命令提示符示例:dir /a (列出当前目录所有文件和目录)

结论

统一用正斜杠"/",Windows和Linux都能识别。

网络路径(浏览器地址栏网址)使用 正斜杠/;

Windows文件浏览器上使用 反斜杠\;

Windows本地路径既能使用正斜杠,也能使用反斜杠。

出现在htm url()属性中的路径,指定的路径是网络路径,所以必须使用 正斜杠/;

style="

background-image:url(/Image/Control/title.jpg);

background-repeat:repeat-x;

padding:10px 10px 10px 10px

">

// 如果url后面用反斜杠,就不会显示任何背景

出现在普通字符串的路径,如果代表的是Windows文件路径,则使用 正斜杠/和 反斜杠\是一样的;如果代表的是网络文件路径,则必须使用 正斜杠/;

// 本地文件路径,/ 和 \ 是等效的

// 网络文件路径,一定要使用 斜杆/

单独的一个反斜杠"\"在编程中通常用于转义字符,如\0表示“空字符”\r表示“回车”,\n表示“换行”等;所有通常要用到反斜杠时,要用两个反斜杠"\\"来表示一个反斜杠“\”的含义。

而"\\"则表示反斜杠\的转义字符,在编程中常用于表示反斜杠\不是普通的字符,而是路径的分隔符。如用一个字符串存储保存文件的路径时,路径为F:\caffe\Temp\image.jpg;则用字符串存储时,应该写为str=F:\caffe\Temp\image.jpg;因为若不这样表示,则反斜杠\将会当作普通字符,而非路径的分隔符,可能与后面的字母对应上,发生了转义字符的作用。

参考资料

正反斜杠的区别_彻底理解斜杠和反斜杠的区别相关推荐

  1. python中斜杠加引号什么意思_如何在Python中转义反斜杠和单引号或双引号?

    你是怎么做到的 如果你的"长字符串"是从文件中读取的(正如你在评论中提到的),那么你的问题是误导性的.因为你显然不完全理解逃逸的工作原理,所以你写下的问题可能与你真正的问题不同. ...

  2. php斜杠输出转义,php中的转义字符(用反斜杠\来输出,和C语言一样)

    php中的转义字符(用反斜杠\来输出,和C语言一样) 一.总结 1.引号中的变量:双引号会替换变量的值,而单引号会把它当做字符串输出. 2.引号中的转义字符:双引号将用变量的值(test)代替它的名称 ...

  3. java 路径中代替斜杠_老生常谈java路径中的反斜杠和斜杠的区别

    JAVA中的斜杠 有正斜杠与反斜杠之分,正斜杠,一般就叫做斜杠,符号为"/":反斜杠的符号为"\". 斜杠(/)在JAVA中没有什么特别的意义,就是代表一个字符 ...

  4. java反斜杠_如何在字符串中使用反斜杠(\)?

    (请参阅答案末尾的ES2015更新.) 您已经标记的问题都string和regex. 在JavaScript中,反斜杠在字符串文字和正则表达式中都有特殊含义.如果你想在字符串或正则表达式中使用实际的反 ...

  5. mysql四个对勾_Mysql like查询语句中,结果包含反斜杠 \ 字符的,需要替换成四个反斜杠 \\\\...

    如题,当SQL语句中使用Like查询,且期望匹配的结果中含有"\"的,应当把"\"替换为"\\\\". 比如数据库中text字段有以下三行: ...

  6. php的转义字符quot;反斜杠quot;是,php如何去除转义字符中的反斜杠

    php去除转义字符中的反斜杠的方法:使用函数stripslashes去掉转义后字符串中的反斜杠,代码为[if (is_string($v)) {$array[$k] = stripslashes($v ...

  7. mysql 替换 斜杠_Mysql like查询语句中,结果包含反斜杠 \ 字符的,需要替换成四个反斜杠 \\\\...

    如题,当SQL语句中使用Like查询,且期望匹配的结果中含有"\"的,应当把"\"替换为"\\\\". 比如数据库中text字段有以下三行: ...

  8. iVMS-4200 Vs区别_杏林早报 | 西芹、水芹、旱芹...功效有区别,吃对才真降血压!...

    打开音乐,开启早报唠嗑的一天~ 昨天说了芹菜能降血压. 祛湿浊.补血安神, 但芹菜有好几种,吃哪个效果更好呢? 今天就来好好说说. (↑ 芹菜种类图) 芹菜其实有很多的品种, 比如根芹.白芹.红芹.空 ...

  9. cookie session token区别_彻底理解cookie,session,token

    点击上方"Java知音",选择"置顶公众号" 技术文章第一时间送达! 作者: 墨颜丶 cnblogs.com/moyand/p/9047978.html 发展史 ...

最新文章

  1. 【iCore3 双核心板】例程十七:USB_MSC实验——读/写U盘(大容量存储器)
  2. angular 应为声明或语句_“允许”员工自愿降薪后,多益网络再发声:声明降薪非自愿者奖 3 万...
  3. Xamarin开发笔记—百度在线语音合成
  4. MATLAB 优化程序【profile简明用法】
  5. 如何用各种编程语言杀死一条龙
  6. 安卓Android资源链接失败,Android资源链接失败
  7. 混淆矩阵与精确度、召回率、F1 Score
  8. VMware 修复 View Planner中的严重RCE 漏洞
  9. 设置crontab用vi打开编辑
  10. cent mysql 配置,centos下MySQL安装配置
  11. stm32 操作W25Q256 W25Q16 spi flash
  12. 贝叶斯网络节点概率的计算
  13. TM1637四位数码管驱动
  14. lol服务器维护8月7,LOL8月7日维护到几点 具体更新了什么
  15. 阿里云云计算专业认证考试(Alibaba Cloud Certified Professional,ACP)
  16. DTI在早期脑发育研究中的应用
  17. vue 全局监听浏览器窗口关闭以及无痕模式场景提示
  18. win7 android 双系统平板 p1000,优派Windows7/Android双系统ViewPad 100
  19. cvpr2020 人脸检测与识别_古有照妖镜,今有换脸识别机,微软 CVPR 2020力作,让伪造人脸无处遁形...
  20. C++第8周项目3小贺的工资

热门文章

  1. oracle partial write,页断裂(partial write)与doublewrite技术
  2. 测试工程师学习的书单(更新中)
  3. js轮播图按钮小案例
  4. 达州高中那家计算机学校好,四川达州那个中学升学率最高哪个高中最好
  5. 缓存更新的Design Pattern -- 缓存专题(2)
  6. 8086CPU与80386CPU的工作原理区别
  7. 什么是MySQL分区表
  8. 如何选择一个好的股票基金?
  9. defy手机突然搜索不到wifi信号的问题
  10. 从Sliverlight Alpha(May2007)到Sliverlight Alpha Refresh之间变化