#
我将文件路径的一部分中的Gedit-hash ( ) 复制粘贴到互联网浏览器中以读取 PDF 文件,但未成功:找不到带有 Gedit-hash 符号的文件。直接从键盘输入哈希符号被认为是正确的。将 gedit-hash 复制粘贴到 Vim 可以正确显示 Ascii 035,也在 ASCII 工具上进行了测试这里。示例文件路径在 Internet 浏览器中被误解,错误地#
扩展为%23
/home/masi/Documents/Edition.pdf#page=605
做
- 将文件路径复制到Gedit
- 从 Gedit 复制文件路径
- 将文件路径粘贴到任何互联网浏览器
- 输出:
#
符号扩展为%23
插入正确解释的文件路径的方法
- 直接在互联网浏览器字段中输入哈希值
操作系统:Debian 8.7
互联网浏览器:Google Chrome 58.0.x、Firefox 最新版
答案1
UNIX 文件名不是 URL。
您可以看到“#”在 unix 文件名中不被解释,但在 URL 中被解释。
$ ls '/home/masi/Documents/Edition.pdf#page=605'
ls: cannot access '/home/masi/Documents/Edition.pdf#page=605': No such file or directory
$ curl '/home/masi/Documents/Edition.pdf#page=605'
curl: (3) <url> malformed
$ curl 'file:///home/masi/Documents/Edition.pdf#page=605'
curl: (37) Couldn't open file /home/masi/Documents/Edition.pdf
Firefox 正在应用正确的转义,以防止文件名字符#
被解释为分隔 URL 中的片段。