一个连接号引发的血案

最近有人直接从 macOS Mojava 升级到 Catalina 出现各种黑屏、卡死的问题。 问我,我只能说我从 beta9 用到现在都没出现过这些问题,因为每次大版本更新我都是从 U 盘全新安装的。 长期使用的系统,难免会隐藏着各种坑,虽然平时保持着一种微妙的和谐,但大版本更新之后这种和谐就必然被破坏。 于是,就协助他使用 U 盘全新安装。原来只需要几个步骤就能完成的事,硬生生浪费了几个小时,罪魁祸首居然是一个连接号...

# 事情经过

首先,使用下面的这个命令创建系统启动盘。

sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia –-volume /Volumes/Catalina

执行之后报错:The volume could not be found

按字面意思那应该是找不到 /Volumes/Catalina 这个卷,于是从这个角度进行了疯狂的尝试。 重新挂载啊、重新分区啊、换其他移动硬盘啊、重启电脑啊、重新下载安装包啊... 难不成 Catalina 以后不支持这样操作了?但苹果的官网也这样写的啊。

卧槽,耐心快用完了,这 TM 是见鬼了吧。

几个小时过后,朋友从其他网站复制了下面的命令执行。

sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/Catalina

卧槽,居然可以了。

???

发给我看的时候,这 TM 那里不一样了啊???

最后,把两段命令放进 VSCode 中,通过多行选中的功能才发现错误的命令中 - 不是同一个字符。 Google 了才发现一个是 连接号 一个是 连字号

# 那么问题又来了

# The volume could not be found ???

参数有误不应该报错说 无效参数 "–-volume" 或者 缺少 volume 参数 才对不是吗?!!

# 人工智障

命令行中会出现 这个鬼东西,估计是因为那个教程网站的编辑器假聪明把 -- 合并起来替换掉了。自以为很智能,其实是个智障。

这方面的佼佼者应该是 Google 了,Google 也不断努力让它提供的服务能够自动化智能一些,不需要人工多干预。不可否认有时候有些功能真的挺方便的,但更多的时候只想说一声呵呵然后看看有没有替代服务。
🌰 手机版 Chrome,不管是 iOS 还是 Android,首页自作主张的就把一些网站列出来,还不让自定义只能删除,更恶心的是删除之后过一段时间再访问又出现了。哪来的自信它列出的网站就是我需要的。

这种东西,做的好是智能,做的不好还强行去做那就是智障了。

# 不同字符看起来一样的问题

在维基百科里看到,类似的字符还有好几个。

-	U+002D    连字曁减号 (HYPHEN-MINUS)
‐	U+2010    连字号 (HYPHEN)
−	U+2212    减号 (MINUS SIGN)
‒	U+2012    数字线 (FIGURE DASH)
–	U+2013    连接号 (EN DASH)
—	U+2014    破折号 (EM DASH)
―	U+2015    水平线 (HORIZONTAL BAR)
﹣	U+FE63    小连字暨减号 (SMALL HYPHEN-MINUS)
-	U+FF0D    全形连字暨减号 (FULLWIDTH HYPHEN-MINUS)

-

lines

解决是没办法解决的了,只能吃一堑长一智,以后遇到这种闹鬼的事情,也考虑一下这种情况。

# 后记

通过这件事,觉得写作者还是需要尽可能严谨一些,因为其实你并不知道你写的东西会有怎样神奇的影响。另一方面读者发现问题了还是应该给出反馈,但不知是没人遇到我这个坑还是坑踩过去了就忘了,并没有人提出这个问题。给原网站留了言,希望其他人能跳过这个坑。感谢互联网这个平台,获取知识才能如此便利,这个平台还是需要大家一起参与、互助才能正向的持续发展。单方面的伸手或者把写的东西直接放出去就不管了都不是好的行为,希望能越来越好。