如何使用文件协议访问本地系统上的目录?
Posted
技术标签:
【中文标题】如何使用文件协议访问本地系统上的目录?【英文标题】:How to use file protocol to access a directory on local system? 【发布时间】:2010-10-31 03:21:11 【问题描述】:喜欢/usr/local
?
我试过file:///usr/local
但失败了
[root@www2 robot]# cd file:///usr/local
-bash: cd: file:///usr/local: No such file or directory
【问题讨论】:
您是如何尝试访问这些文件的?什么语言,什么程序,...? 什么浏览器?在 FF3 上为我工作。 @Zifre,只有浏览器可用吗? 我正在使用 winSCP 访问远程服务器,还使用 putty 访问 bash shell。有一个名为“student”的文件夹,该文件夹中有 word(docx) 格式的学生资料。路径是“/data/student/studentprofile/johncallack.docx”。如何通过 bash shell 使用上述路径访问该文件夹? 【参考方案1】:file:
协议仅存在于网络浏览器中。在 Firefox 中尝试,它应该可以工作。要在 shell 中执行此操作,只需使用
不要使用file:
。这也是你做不到的原因
这会很棒(但你必须使用wget
或curl
之类的东西)。
【讨论】:
如果您谈论的是 FireFox,那么是的,我知道,我滑倒了,真丢脸。不过现在已经修好了。 不一定是wget,而是curl(即“cat url”)。 “文件:协议仅存在于网络浏览器中”?不是这样。文件的 URL 不仅限于 Web 浏览器。例如,作为 collection() XPath 函数的参数,用于从本地磁盘获取一组 XML 文档。【参考方案2】:file:///
不适用于bash
或衍生外壳。
它可以在大多数浏览器中运行,并且可能在wget
和curl
中运行,但bash
不是网络浏览器。
【讨论】:
【参考方案3】:据我所知,bash 和 cd 不能跨多个协议运行。如果您想通过其他协议访问内容,则必须将它们挂载到本地文件系统。
您不是在尝试 cd 到用户在某些网络表单上提供的某个位置吗?
【讨论】:
【参考方案4】:如果您需要能够从您的 shell 访问通用 URL,请尝试使用 curl 作为您的猫的替代品:
curl file:///path/to/file.txt
curl http://www.domain.com/file.txt
但正如其他发帖者所指出的,shell 本身不理解 URL。
【讨论】:
【参考方案5】:如果您必须在命令行上处理 file:///usr/local,您可以删除“file://”部分。然后执行正常的命令,例如:
echo "file:///usr/local/" | sed 's/file:\/\///' | cd
【讨论】:
以上是关于如何使用文件协议访问本地系统上的目录?的主要内容,如果未能解决你的问题,请参考以下文章