【问题标题】:Find the original file for a series of soft-linked files查找一系列软链接文件的原始文件
【发布时间】:2014-05-24 07:59:40
【问题描述】:

如何编写一个 bash shell 脚本来查找一系列软链接文件的原始文件? 例如,如果我在一个目录中有 5 个文件并命名为 file1 到 file5。 File2链接到file1,file3链接到file2,file4链接到file3,file5链接到file4。在这种情况下,原始文件是file1。

我希望脚本在当前目录中搜索文件,而不是提供路径。

如果没有符号链接,则显示这样的消息

如果有符号链接,那么应该显示原始文件,以及符号链接文件的名称: 例如 文件是文件 1。符号链接文件是:file2、file3、file4。文件5。

【问题讨论】:

  • 您尝试自己解决了吗?
  • 使用“ls -l”,它会显示符号链接。

标签: linux bash function shell symlink


【解决方案1】:
for f in *
  do test -L $f || echo $f ;
done

【讨论】:

  • "test -L" 效果很好。如果答案不是很完整,那是因为我给提问者留下了一点思考,所以我没有做他们的功课。
  • 这没有提供问题的答案。要批评或要求作者澄清,请在其帖子下方发表评论。
  • ??它就像我 - 即使是现在 - 阅读他的问题一样。他在一个目录中有几个文件,想知道哪些是符号链接,哪些不是。他对我问得很清楚。否则,“man readlink”就是答案。
  • 想知道哪些是符号链接,他还想知道它们指向的位置。您的第一条评论说答案不完整 - 这很清楚地意味着这不是问题的正确答案。给出提示很好,但它应该在 cmets 中,而不是答案。
猜你喜欢
  • 2011-05-30
  • 2018-11-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-05
相关资源
最近更新 更多