假设我有一个文件移动到某个地方,但我不知道移动它时它在哪里。
我怎么知道它是上一个目录?
假设我已经改变了很多目录,所以cd -
不会工作。
那么,我怎样才能找到它呢?
答案1
这是不是可能的一般来说,因为无法保证任何内容都记录了文件的原始位置。我不知道随着时间的推移记录文件位置的通用机制,但您可以尝试的一些可能性包括:
- 从备份中恢复。
locate name_of_file
- 如果安装了 mlocate 并且数据库仍然过时,它应该列出原始文件路径。当然,它还会列出包含相同文件名的任何其他路径,因此如果文件名不唯一,您必须检查哪些路径仍然存在。如果只有一个路径丢失,您可以相当确定它是原始文件路径。- 如果该文件属于包管理器安装的包,我只需重新安装该包并忽略/删除该副本。
- 万一有人安装了某种形式的系统活动日志记录,您应该能够从该日志中检索有关移动操作的信息。
- 在里面非常您正在使用的可能性很小文件系统版本控制你可以从中恢复。
答案2
在巴什中,
history | grep -E 'cd | mv.*yourfilename'
包含“mv.*yourfilename”的行上方或下方带有“cd”命令的行可能会提示您先前的位置。如果历史列表的大小太小而无法包含相关的 cd 和 mv 命令,则此方法不起作用。