pwd在terminal标签中带有符号链接的奇怪行为

pwd在terminal标签中带有符号链接的奇怪行为,第1张

概述pwd在terminal标签带有符号链接的奇怪行为

如果我通过创build一个符号链接

ln -s /path/to/linked/dir current/path/link_name

并通过改变目录到current/path/link_name

cd link_name

那么我可以检查我在哪里使用pwd命令。 输出将是

current/path/link_name

但是如果我使用一些terminal仿真器,如终结者,konsole或其他,我可以拆分标签或在同一目录中创build一个新的标签。 新创build的选项卡中的pwd命令的输出将为

如何让Mac和windows用户更改他们的AD密码?

如何设置两个不同帐户之间的无密码valIDation

以不同的用户身份从Java运行UNIX命令

存储跨域Web服务访问凭据的最佳实践?

我在linux上调用什么API来设置用户密码?

/path/to/linked/dir

在很多情况下,这是不方便的。 有人知道如何在一些terminal模拟器中改变这种行为吗?

PS我也注意到,从/current/path/link_nameinput的ls的输出与从/path/to/linked/dirinput的ls的输出相同。

更改脚本的root密码

检查密码上次更改的时间

Opensslencryption库中是否有函数来安全地input密码?

windows 8的地铁 – 如何使密码文本框?

windows无人参与安装 – Unattended.xml administratorPasswordencryption/哈希

你不能。 原因是你失去了系统调用执行后你到达那里的信息。 一些终端仿真器和主要是bash(1) shell试图记住这一点,并将pwd作为内部命令来应对这种情况。 但总的来说,如果你尝试

/bin/pwd

你会发现所有关于你如何进入最终目录的信息都随着时间的流逝而消失。

问问你自己/bin/pwd如何工作的以及如何确定你所在的目录,然后你会回答自己的问题:

系统在每个进程的系统数据中维护一个当前目录 ( pwd命令从它的父shell继承这个目录 ),但为了节省资源,它只存储实际上是你当前目录的目录的inode号(实际上不是它保持对核心inode结构的引用)。 它不存储你用来定位它的路径,它只存储这些信息,以便在打开文件时要求相对路径时能够获得起点。 问题与确定多个链接文件属于哪个目录相同…没有父目录被存储为一个文件,因为它可以在多个目录中同时链接到它…这也适用于目录,但他们有一个内部链接到他们的父母(他们的真正的父母 ,因为一个目录现在允许属于不同的目录通过正常的链接,这是系统禁止,并确保由mkdir(2)系统调用) pwd(1)命令精确地使用这些链接来查找父目录(然后通过搜索当前目录的inode号找到父目录中的当前目录),直到该算法导致到相同的inode(根目录有这个特殊的特征,它的..入口指向自己),所以它停止上升。 pwd只能工作,因为它跟随目录 ,而不是文件。

终结者1.90做你想要的。 在一个例子中:

$ cd -- "$(mktemp --directory)" $ mkdir a $ ln -sab $ cd b

按下Ctrl – Shift – e (或o或t )。 在这一点上,我仍然在b 。

总结

以上是内存溢出为你收集整理的pwd在terminal标签中带有符号链接的奇怪行为全部内容,希望文章能够帮你解决pwd在terminal标签中带有符号链接的奇怪行为所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1257127.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存