find -printf中%指令的说明


Answers:


25

此处使用的%s%p选项是什么?

手册页

%s 文件的大小,以字节为单位。

%p 文件名。

在该页面上向下滚动至printf的所有常规字母之外,然后阅读前缀为%的部分。

%n 到文件的硬链接数。

%p 文件名。

%P 文件名以及发现该文件的起点的名称。

%s 文件的大小,以字节为单位。

%t 文件的最后修改时间,格式为C`ctime'函数返回的格式。

还有其他可以使用的选项吗?

有。请参见联机帮助页的链接。


@don_crissti我永远也不会理解为什么人们喜欢随机Web文档而不是安装在系统上的文档(这实际上具有与系统相关的附加好处)。
库萨兰达

1
@Kusalananda-好吧,我可以想到一种情况,在这种情况下,人们会包括一个指向网页的链接,而不是其系统上安装的文档的引文:撰写本文时,他们不在Linux机器上。 ..但是,链接应指向(imo)到官方文档(因此,我在上面的评论(由于某些未知原因,已被mods删除...)。除此之外,我完全同意您的意见:OP应该查阅安装在系统上的手册页。
don_crissti

2
@don_crissti或者它们位于没有安装手册页的服务器上,该手册页非常频繁。
runlevel0

我的手册页通常来自FreeBSD。除非我碰巧拥有Linux VM。我的印象是,大多数问题都是基于GNU / Linux的。
Hennes

3
我还应该补充一点,除了对于相对缺乏经验的用户而言,手册页的压倒性的,经常是难以理解的输出之外,作为程序员/高级用户,我通常还在寻找手册页无法涵盖的新颖解决方案。例如(刚刚),“查找”命令输出的特定日期格式。手册页没有告诉您在每个变量的前面都加上“%T”,至少我没有找到它,甚至没有专门寻找它。您可以花一整天的时间弄清楚它。(或只是给出。)而在Stack Exchange上进行搜索将在第一个结果中给出明确解释的答案。
吉姆(Jim)

0

Barrett 2012在第74页上说:

-printfstring 打印给定的字符串,该字符串可能以C库函数的方式应用于它printf()。”

并建议使用手册页,以获得完整的选项列表。尽管诸如此类的事情find . -printf '%s %p\n'得到了解释,但其他人却没有。 @jim提到了的使用%T。我个人在脚本中使用类似于的行find . -printf '%T@ %p\n'%T@却始终无法理解其含义。有人可以参考手册中找不到的这些选项的解释性源吗?


1
巴雷特这个人是谁?
库萨兰达

@Kusalananda,《 Linux Pocket Guide》的作者Daniel J. Barrett,页面引用指的是第二版。在运行图书馆之前,请注意,不要在此处找到解决此问题的方法。否则一个很好的指南。
choklo
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.