了解文件路径以及如何在Linux中使用它们

文件路径是计算机系统上文件或文件夹位置的可读格式。 您已经在Internet上看到了文件路径,尽管您可能没有意识到:Internet URL,尽管AOL和CompuServe等专有公司进行了长期的斗争,但实际上只是他人(有时是动态创建)文件的路径。电脑。 例如,当您导航到example.com/index.html时,实际上是在查看HTML文件index.html,该文件可能位于example.com服务器上的var目录中。 您计算机上的文件也具有文件路径,本文介绍了如何理解它们以及它们为什么很重要。

当计算机成为家用物品时,它们与现实世界的模型越来越相似。 例如,而不是账户和目录,个人电脑,据说有桌面文件夹 ,最终,人们开发了潜在的印象是,计算机是一个窗口,进入现实世界的虚拟版本。 这是一个有用的类比,因为每个人都熟悉台式机和文件柜的概念,而了解数字存储和内存地址的人却很少。

事实证明,UNIX的创建者具有相同的本能,只是他们称这些组织目录文件夹为单位。 计算机驱动器上的所有文件都在系统的基本(根)目录中。 甚至将外部驱动器也带入此根目录,就像在整理办公室空间或爱好室时可能会将重要的相关项目放入一个容器中一样。

Linux上的文件和文件夹被赋予了名称,其中包含常用的组件,例如键盘上的字母,数字和其他字符。 但是,当文件位于文件夹中或某个文件夹位于另一个文件夹中时, /字符会显示它们之间的关系。 这就是为什么您经常看到以/ usr / bin / python3/ etc / os-release格式列出的文件的原因。 正斜杠表示一个项目存储在它之前的项目内部。

POSIX系统上的每个文件和文件夹都可以表示为路径。 如果我的主目录下的Pictures文件夹中有penguin.jpg文件,并且我的用户名是seth ,则文件路径可以表示为/home/seth/Pictures/penguin.jpg

大多数用户主要与其主目录进行交互,因此将波浪号( )用作速记。 这个事实意味着我可以将示例企鹅图片表示为/home/seth/Pictures/penguin.jpg〜/ Pictures / penguin.jpg

实践使完美

无论您是否在考虑文件路径,计算机都使用文件路径。 您不必一定要根据路径来考虑文件。 但是,文件路径是一个有用的框架的一部分,该框架可用于了解计算机的工作方式,并且如果您想成为开发人员(需要了解支持库的路径),则学习在路径中思考文件可能会很有用。 Web设计人员(文件路径可确保您将HTML指向适当CSS),系统管理员或仅是高级用户。

如有疑问,请拖放

如果您不习惯将硬盘的结构视为路径,那么可能很难为任意文件构造完整路径。 在Linux上,大多数文件管理器要么本机显示(或可以选择)到您所处位置的完整文件路径,这有助于每天强化这一概念:

海豚文件管理器

opensource.com

如果您使用的是终端,可能会有助于了解现代终端(不同于它们模拟的电传打字机)可以通过拖放方式接受文件。 例如,当您通过SSH将文件复制到服务器时,并且不确定如何表达文件路径时,请尝试将文件从GUI文件管理器拖到终端中。 代表文件的GUI对象在终端中转换为文本文件路径:

终端接受拖放操作

opensource.com

不要浪费时间输入猜测。 只需拖放即可。

塔伯是你的朋友

在著名的避开三个字母的命令时,两个甚至一个字母的命令将做一个系统,放心,没有经验丰富的POSIX用户永远类型了一切。 在Bash Shell中, Tab键表示autocomplete ,而autocomplete绝不存在。 例如,要键入示例penguin.jpg文件的位置,可以从以下内容开始:


   
   
$ ~/Pi

然后按Tab键。 只要Pi开头只有一项,“ Pictures ”文件夹将自动为您完成。

如果有两个或多个项目以您尝试自动完成的字母开头,那么Bash将显示这些项目是什么。 您手动输入更多内容,直到找到一个可以安全完成外壳程序的唯一字符串。 关于此过程的最好的事情不一定是它使您免于键入(尽管这绝对是一个卖点),但是自动完成功能永远不会出错。 不管您与计算机进行多大努力以自动完成不存在的内容,最终,您都会发现自动完成比任何人都能更好地理解路径。

假设您经过深夜的重组,将penguin.jpg〜/ Pictures文件夹移动到〜/ Spheniscidae目录。 您可以入睡并刷新,但是没有重新组织的内存,因此您尝试使用自动完成功能将〜/ Pictures / penguin.jpg复制到终端中的Web服务器。

无论您对Tab键有多大的投入,Bash都会拒绝自动完成。 您想要的文件根本不在您认为存在的位置。 当您尝试将网页指向您确定已上传的字体或CSS文件时,或者当您将编译器指向您已经100%肯定的库时,该功能将很有用。

这不是你奶奶的自动完成

如果您喜欢Bash的自动完成功能,那么一旦在Zsh中尝试自动完成功能,就会sc之以鼻。 Z Shell以及Oh My Zsh网站提供了动态体验,其中包含针对特定编程语言和环境的插件,带有有用反馈的视觉主题以及充满激情的Shell用户社区:

A modest Zsh configuration.

如果您是视觉思维者,并且发现大多数终端机的显示停滞不前和麻木,Zsh可能会改变您与计算机交互的方式。

多加练习

文件路径在任何系统上都很重要。 您可能是一个视觉化的思想家,喜欢将文件视为文字文件夹内的文字文档,但计算机将文件和文件夹视为数据池中的命名标签。 它通过遵循其指定的路径来标识一个数据集与另一个数据集的方式。 如果您了解这些路径,还可以将它们可视化,并且可以说与操作系统相同的语言,从而使文件操作快得多。

翻译自: https://opensource.com/article/19/8/understanding-file-paths-linux

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值